第6次作业

题目一:编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中的Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。

源程序:

package b;

public class Computer {     //创建computer类
public int jiecheng(int n){  //定义一个方法为jiecheng
	int j=1;
	for(int i=1;i<=n;i++){   //通过for循环求阶乘
		j*=i;}

return j;             //  返回求出的阶乘
}
}

  

package a;
import java.util.*;
import b.*;                      //引入b包

public class Sqx {

	
	public static void main(String[] args) {
		Scanner reader=new Scanner(System.in);
		System.out.println("请输入数为:");    
		int n=reader.nextInt();               //输入该数
		Computer computer=new Computer();  //定义新的对象
		System.out.println("阶乘为:"+computer.jiecheng(n));  //调用方法求出阶乘值并输出
		

	}

}

  运行结果

题目二:设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:

              1.两个私有成员变量x和y表示坐标值;

              2.成员变量x和y的访问器和修改器;

              3.无参构造方法创建点(0,0);

              4.一个有参构造方法,根据参数指定坐标创建一个点;

              5.distance方法(static修饰)返回参数为MyPoint类型的两个对象之间的距离。

             编写主类Test,在主类中输入两点坐标,创建两个对象,利用diatance()方法计算这两个点之间的距离。

源程序:

package a;

public class MyPoint {      // 定义两个变量x,y的坐标值
	double x;
	double y;

	public double getX() {        //成员变量x的访问器和修改器
		return x;
	}

	public void setX(double x) {
		this.x = x;
	}

	public double getY() {      //成员变量y的访问器和修改器
		return y;
	}

	public void setY(double y) {
		this.y = y;
	}

	MyPoint() {                  //无参构造方法创建点
		x = 0; 
		y = 0;
	}

	MyPoint(double x, double y) {   //有参构造方法直接创建点
		this.x = x;
		this.y = y;
	}

	static double distance(MyPoint P1, MyPoint P2) {  //创建方法distance
		double x1 = P1.getX();
		double x2 = P2.getX();
		double y1 = P1.getY();
		double y2 = P2.getY();
		return (Math.sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2)));

	}                                     //返回两点之间的距离
}

  

package a;
import java.util.*;

public class Text {                    //主类Test
	public static void main(String[] args) {  //主方法
		double x1,x2,y1,y2;                  //定义变量
		Scanner reader=new Scanner(System.in);
		System.out.println("第一点坐标是:");       //提示输入第一个点的坐标
		
		x1=reader.nextDouble();                       //输入x1和y1的值
		y1=reader.nextDouble();
		System.out.println("第二点坐标是:");     //提示输入第二个点的坐标
		x2=reader.nextDouble();
		y2=reader.nextDouble();                      //输入x2和y2的值
		MyPoint p1=new MyPoint(x1,y1);       //创建对象p1和p2
		MyPoint p2=new MyPoint(x2,y2);
		System.out.println("两点坐标的距离是:" +MyPoint.distance(p1,p2));
    
	}                                                        //使用方法算出两点之家的距离并输出

}

  运行结果

 

 

 
 

 

                      Computer           jiecheng(定义一个求阶乘的方法)

                                                   

                                                    定义j变量通过for求这个数的阶乘

 

两个类

 

 

                             输入该数

                sqx

创建一个对象compter

 

通过调用方法输出这个数的阶乘

 

原文地址:https://www.cnblogs.com/lllm/p/11561398.html