第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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值