在java中键入命令行参数后,如何创建一个代码,使c^2=a^2+b^2中的c是最长的边?

gmxoilav  于 2021-07-12  发布在  Java
关注(0)|答案(1)|浏览(265)

指令整数和布尔。编写一个程序righttangle,它接受三个int命令行参数,并确定它们是否构成某个直角三角形的边长。直角三角形下列两个条件是必要的和充分的:

  • 每个整数必须为正*两个整数的平方和必须等于第三个整数的平方。

我的尝试:

public class RightTriangle
{
    public static void main(String[] args)
    {
        int c = Integer.parseInt(args[2]);
        int b = Integer.parseInt(args[1]);
        int a = Integer.parseInt(args[0]);
        boolean arePositive;
        arePositive = (a >=0) && (b>=0) && (c>=0);
        boolean isRightTriangle;
        isRightTriangle =(c*c == b*b + a*a) && arePositive;
        System.out.println(isRightTriangle);
    }
}
qltillow

qltillow1#

如果你绘制Map String 数组 args 到一个 integer 数组 sides ,只需对值进行排序,确保最大值位于数组的最后一个元素中。

import java.util.Arrays;

public class RightTriangle{
    public static void main(String[] args){
        int[] sides = Arrays.stream(args).mapToInt(Integer::parseInt).toArray();
        Arrays.sort(sides);

        int a = sides[0];
        int b = sides[1];
        int c = sides[2];

        System.out.println(sides);
        boolean arePositive = (a >=0) && (b>=0) && (c>=0);
        boolean isRightTriangle = (c*c == b*b + a*a) && arePositive;
        System.out.println(isRightTriangle);
    }
}

相关问题