Java程序设计实验2

//1、编写程序,找出100~700间能同时被3、7、11整除的数,源程序保存为Ex2_1.java。
public class Ex2_1
{
	public static void main(String[] args)
	{
		for(int i=100;i<=700;i++)
		{
			if((i%3==0)&&(i%7==0)&&(i%11==0))
			{
			System.out.println(i);
			}
		}
	}
}

//2、编写程序,求1!+2!+...20!的和并输出,
//同时要求把1!、2!、3!...的结果存放到一个数组中,并输出数组的各元素。
//源程序保存为Ex2_2.java
public class Ex2_2
{
	public static void main(String[] argc)
	{
		long  ia[]=new long[21];
		int k=1;
		long sum=0;
		for(int i=1;i<=20;i++)
		{
			for(int j=1;j<=i;j++)
			{
				k*=j;
			}
			ia[i]=k;
			k=1;
		}
		for(int i=1;i<=20;i++)
		{	
			sum+=ia[i];
		}
			System.out.println("1!+2!+....+20!="+sum);
			
		for(int i=1;i<=20;i++)
		{	
			
			System.out.println(i+"的阶乘="+ia[i]);
		}
	}
}

//3、调试运行书本P59页例4.1,
//并修改程序实现两个数的相乘,修改源程序保存为Ex2_3.java。
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;

public class Ex2_3 extends Applet implements ActionListener
{
	Label label1=new Label("*");
	Label label2=new Label("=");
	TextField field1=new TextField(6);
	TextField field2=new TextField(6);
	TextField field3=new TextField(6);
	Button button1=new Button("相乘");

	public void init()
	{
		add(field1);	add(label1);
		add(field2);	add(label2);
		add(field3);	add(button1);
		button1.addActionListener(this);
	}
	public void actionPerformed(ActionEvent e)
	{
		int x=Integer.parseInt(field1.getText())*Integer.parseInt(field2.
			getText());
		field3.setText(Integer.toString(x));
	}
}

//4、编写程序:
//(1)创建一个描述平面坐标系中的点及其操作的类Point,
//添加两个double类型的属性x,y,描述点在坐标系中的位置。
//(2)在Point中添加方法:初始化x和y的构造函数;
//返回x和y值的getX( )和getY( );
//将点平移w(水平)和h(垂直)的方法shiftPoint (double w, double h);
//确定点在第几象限的方法whatQuadrant( ),并返回结果;
//(3)编写程序测试类Point,使用上面定义的各个方法,
//并将其结果输出,源程序保存为Ex2_4.java。

class Point
{
	private double x,y;
	Point()
	{
		x=20;
		y=20;
	}
	public double getX()
	{
		return x;
	}

	public double getY()
	{
		return y;
	}

	public void shiftPoint(double w,double h)
	{
		x=x+w;
		y=y+h;
	}

	public int  whatQuadrant(Point p)
	{
		if(x>0&&y>=0)
			return 1;
		else if(x<=0&&y>0)
			return 2;
		else if(x<0&&y<=0)
			return 3;
		else return 4;
	}
}
	public class Ex2_4
	{
		public static void main(String args[])
		{
			Point po=new Point();
			double x1,y1;
			int i;
			x1=po.getX();
			y1=po.getY();
			System.out.println("该点的X位置:"+x1);
			System.out.println("该点的Y位置:"+y1);
			po.shiftPoint(-20,10);
			i=po.whatQuadrant(po);
			System.out.println("该点在第"+i+"象限");


		}
	}

posted on 2012-03-14 20:11  1.曲待续  阅读(222)  评论(0编辑  收藏  举报

导航