第6次作业

题目一:

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

Computer.java

 1 package 李佳琦;
 2 
 3 public class Computer {
 4 
 5     public int jiecheng(int n){ //定义参数为n的方法 ,方法名字叫jiecheng 
 6         int count=1;           
 7         for (int i=1;i<=n;i++){ //利用for循环求参数n的阶乘
 8             count *=i;
 9         }
10         return count;           //将阶乘值返回给jiecheng方法
11 
12 
13         }
14     }

App.java

 1 package 李佳琦;
 2 
 3 import java.util.Scanner;
 4 
 5 public class App {
 6 
 7     
 8     public static void main(String[] args) {
 9          Computer c=new Computer();                //创建一个新对象c
10             System.out.println("请输入一个数:");
11             Scanner reader=new     Scanner(System.in);  
12             int n=reader.nextInt();                  
13             System.out.println(n+"的阶乘为:"+c.jiecheng(n));//调用c对象中的jiecheng方法,求n的阶乘
14         }
15 
16 
17     }

运行结果

 题目二

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

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

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

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

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

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

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

MyPoint.java

 1 package 李佳琦;
 2 
 3 public class MyPoint {
 4     private double x;           //创建私有double型变量x,y
 5     private double y;
 6     public double getX() {      //生成x和y的访问器和修改器
 7         return x;
 8     }
 9     public void setX(double x) {
10         this.x = x;
11     }
12     public double getY() {
13         return y;
14     }
15     public void setY(double y) {
16         this.y = y;
17     }
18     MyPoint (){               //无参构造方法创建点(0,0)
19         double x=0;
20         double y=0;
21     }
22     public MyPoint(double x,double y){    //一个有参构造方法,根据参数指定坐标创建一个点
23         this.x=x;
24         this.y=y;
25     }
26     public static double Distance(MyPoint p1,MyPoint p2){   //创建Distance方法,返回参数为MyPoint类型的两个点对象之间的距离。
27         double x1=p1.getX();
28         double x2=p2.getX();
29         double y1=p1.getY();
30         double y2=p2.getY();
31         return Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
32     }
33     
34 
35 }

Test.java

 1 package 李佳琦;
 2 
 3 import java.util.Scanner;
 4 
 5 public class Test {
 6     public static void main(String[] args) {   
 7                 Scanner sc=new Scanner(System.in);
 8                 System.out.println("请输入第一个点的横纵坐标:");   
 9                 double a=sc.nextDouble();     //a和b接收键盘输入的第一个点的横纵坐标
10                 double b=sc.nextDouble();
11                 System.out.println("请输入第二个点的横纵坐标:");
12                 double c=sc.nextDouble();     //c和d接收键盘输入的第二个点的横纵坐标
13                 double d=sc.nextDouble();
14                 MyPoint p1=new MyPoint(a,b);  //创建p1 p2对象
15                 MyPoint p2=new MyPoint(c,d);
16 
17                 System.out.println("两点之间距离为:"+MyPoint.Distance(p1,p2));//调用MyPoint类中的Distance方法,以p1 p2为参数,
18             }
19 
20         
21 
22     }

运行结果:

原文地址:https://www.cnblogs.com/lietian12345/p/11565156.html