这道java题应该怎么做?

编写坐标系的zhong 的点类Cpoint。1、编写相应的构造方法初始化某个点;2、重载构造方法初始化对角线的点;3、编写重载方法计算点到原点,点到点,点到另一个坐标的距离。
主函数如下:
public static void main(String[] args){
int x1,x,y1;
Scanner scn=new Scanner(System.in);
x1=scn.nextInt();y1=scn.nextInt();
x=scn.nextInt();
Point p1 = new Point(x1,y1);
Point p2 = new Point(x);
System.out.println(String.format("%.2f", p1.distance()));
System.out.println(String.format("%.2f", p2.distance()));
System.out.println(String.format("%.2f", p1.distance(6,8)));
System.out.println(String.format("%.2f", p1.distance(p2)));
}
输入

输入两个点
输出

点之间的距离
难度

一般
输入示例

3 4
5
输出示例

5.00
7.07
5.00
2.24

Java源代码:

public class Test {

public static void main(String[] args) {

Point p1 = new Point(4, 5);

System.out.printf("点p坐标为(%f,%f)\n", p1.getX(), p1.getY());


p1.setX(3);

p1.setY(4);

System.out.printf("重置后点p坐标为(%f,%f)\n", p1.getX(), p1.getY());


System.out.printf("点(%f, %f)到原点的距离的平方为%f\n", p1.getX(), p1.getY(),

p1.distance());


Point p2 = new Point(1, 2);

System.out.printf("点(%f,%f)到点(%f,%f)的距离的平方为%f\n", p1.getX(),

p1.getY(), p2.getX(), p2.getY(), p1.distance(p2));

}

}


class Point {

protected double x;

protected double y;


public Point(){

}


public Point(double x, double y) {

this.x = x;

this.y = y;

}


public void setX(double x) {

this.x = x;

}


public double getX() {

return this.x;

}


public void setY(double y) {

this.y = y;

}


public double getY() {

return this.y;

}


public double distance() {

return Math.pow(x, 2) + Math.pow(y, 2);

}


public double distance(Point p) {

return Math.pow(this.x - p.x, 2) + Math.pow(this.y - p.y, 2);

}

}




运行测试:

温馨提示:内容为网友见解,仅供参考
第1个回答  2020-03-06
public class Point {
private int x;
private int y;

public Point(int x, int y) {
this.x = x;
this.y = y;
}

public Point(int x) {
this(x, x);
}

public int getX() {
return x;
}

public int getY() {
return y;
}

public double distance(int x, int y) {
return Math.sqrt(Math.pow(x - this.x, 2) + Math.pow(y - this.y, 2));
}

public double distance(Point p) {
return distance(p.getX(), p.getY());
}

public double distance() {
return distance(0, 0);
}

public static void main(String[] args) {
int x1, x, y1;
Scanner scn = new Scanner(System.in);
x1 = scn.nextInt();
y1 = scn.nextInt();
x = scn.nextInt();
Point p1 = new Point(x1, y1);
Point p2 = new Point(x);
System.out.println(String.format("%.2f", p1.distance()));
System.out.println(String.format("%.2f", p2.distance()));
System.out.println(String.format("%.2f", p1.distance(6, 8)));
System.out.println(String.format("%.2f", p1.distance(p2)));
}
}追问

谢谢,我已经会了

本回答被提问者和网友采纳

学习java得,高手!这道题怎么做
1、c就是个字符,它的值就是'a'2、第二步,把c赋值给了i,因为i是整型,所以i得值为’a'对应的ascii码97 3、第三步,i++运算符的原则是先用后加,所以f的值是97.0(浮点型),而i的值已经变成了98 4、第四步,f+1的值为97.0+1=98.0,转成byte就是98,所以b为98 5、最后输出...

这道Java题怎么做?
public class Point {private int x;private int y;\/\/ 1. 可以生成具有特定坐标的点对象public Point(int x, int y) {super();this.x = x;this.y = y;}\/\/ 2. 提供可以设置2个坐标的方法public void setX(int x) {this.x = x;}public void setY(int y) {this.y = y;}public ...

Java这道题用什么方法做?
public class Test1 { public static void main(String[] args) { int sum = 0;for (int i = 0; i <= 100; i++) { sum = i % 2 == 0 ? sum + i : sum;} System.out.println("sum = " + sum);} } 上面是for循环的代码和执行结果。下面是while循环的代码和执行结果。publ...

这道java题怎么做?
import java.awt.Color;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;public class RadioDemo extends JFrame { public RadioDemo() { init();this.setLayout(new FlowLayout());this.setTitle("XX号XXX");this.setBounds...

04747java语言程序设计(一)怎么学习考过?
要得懂读代码、写代码、调试代码。必须得上机训练,搞清楚书上的示例代码,再搞清楚往年试卷的程序大题,基本上拿个20分以上,大概要做对3,4道题。不过也要努力,毕竟这一行没点真工夫是真不行。这些可以找一些视频,找一些讲解,在某bi站上有很多大佬讲解,可以去找找。希望对您能有帮助。

Java作业,请问这个怎么做
第一题,没猜错的话,里面那个是if(a==5) a=10; 最后结果 s=20;2.第二题

这个问题怎么用java程序解决啊
答案是 15 这个用java好算 sum = 0;n = 5;while(n > 0){ sum += n; n--;}原理:A B C D E 5个小白鼠 第一步,5个小白鼠各喝一瓶,如果死了是一个,哪个死了,说明那个是毒药。第二步,AB 喝一个, BC 喝一个,以此类推,可以再喝4个,如果死了是两个,哪两个死...

Java这题如何运算,需要详细过程
i=1;i<5;i++可知外部循环4次 而内部循环,j=1;j

请问java中用for循环如何做这道题? 输入年,月,日,输出星期几。(已知...
java中一个日期减去另一个日期得到的是毫秒数的值。所以你想得到从1900.1.1到你输入的日子有多少天必须自己实现。我简单写了个。有些显示问题你自己在整理下。public static void calculate(int y,int m,int d){ \/\/用你给定的年,月,日初始化一个Date对象 Date d1 = new Date(y,m,d);\/...

这道题用java怎么写?已知方程ax2+bx+c=0的系数值(设a≠0),求方程的根...
所以Java语言给出的类的实例无法做到只依赖于抽象类型。但是我们可以做到部分依赖,因为Java中有多态的特性。例如A是一个抽象类,B是继承自A的一个具体子类,我们可以写如下的代码:B b = new B();1 这是一个完全依赖具体的不好的写法,我们可以利用多态性写成下面这样:A a = new B();

相似回答