如何输入三角形的3个边,然后确定它是否是直角三角形

时间:2014-05-17 20:20:25

标签: java

这是我到目前为止所做的:

import javax.swing.JOptionPane;
public class Right_Triangle
{   
    public static void main (String args [])
    {

        String x = JOptionPane.showInputDialog ("What is the length of your hypotenuse?");
        String y = JOptionPane.showInputDialog ("What is the length of your base?");
        String z = JOptionPane.showInputDialog ("What is the height of your triangle?");
        double a = Double.parseDouble(x);

        a = Math.pow (x,2);
        b = Math.pow (y,2);
        c = Math.pow (z,2);
        if (a + b == c)
        {
            System.out.println ("Right triangle");
        }
    }
}

为什么不编译?

1 个答案:

答案 0 :(得分:1)

您正在解析其中一个输入以创建双精度数:

double a = Double.parseDouble(x);

但你还需要为其他两个输入(y和z)

执行此操作

此外,您需要使用解析后的双打(a,b,c)进行计算,而不是使用原始字符串(x,y,z)进行计算。

另请参阅SpiderPig关于舍入错误的评论。如果您的三角形具有整数边长,那么您应该将它们表示为整数,而不是双精度 - 并使用x*x而不是math.pow(x,2)来平方边长