Java构造重载求点与原点点与固定点点与点的距离

Posted 哦呦aholic

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java构造重载求点与原点点与固定点点与点的距离相关的知识,希望对你有一定的参考价值。

描述

编写坐标系中的点类CPoint。

1.编写相应的构造方法初始化某个点;

2.重载构造方法初始化对角线的点;

3.编写重载方法计算点到原点,点到点,点到另一个坐标的距离。

输入两个点的坐标,若该点的横坐标与纵坐标相同如(5,5),则只需输入5即可。

输出两点与原点的距离、第一个点与固定点(-6,-8)的距离、两点的距离,结果保留两位小数。

难度

一般

输入示例

3 4
5

输出示例

5.00
7.07
15.00
2.24
import java.util.Scanner;

public class CPoint {
    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)));
    }

}
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);
    }
}

 

以上是关于Java构造重载求点与原点点与固定点点与点的距离的主要内容,如果未能解决你的问题,请参考以下文章

salesman,动态规划带一点点贪心。

[原创题] 树上点到路径的距离, 以及树上路径到路径的距离

BZOJ1601: [Usaco2008 Oct]灌水

算法:点与点之间欧式距离最小

用矩阵来运算向量与点的平移

DBSCAN算法实现---Python