• 第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

     

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

     

  • 相关阅读:
    关于图片去水印和转载
    多叉树(森林)转二叉树
    [置顶] 读入优化&输出优化
    【NOI OJ】1816 拨钟问题
    Splay树
    【AVL】宠物收养所
    【树状数组】Stars
    对拍
    使用Mybatis进行多表联查操作
    搜索框自动提示
  • 原文地址:https://www.cnblogs.com/lllm/p/11561398.html
Copyright © 2020-2023  润新知