import java.util.Scanner;
public class FantahunKeburAlmostIsoscelesRightTriangle{
public static void main (String []args){
Scanner s = new Scanner(System.in);
System.out.println("Enter the longest side: ");
double longest = s.nextDouble();
System.out.println("Enter 2nd side: ");
double second = s.nextDouble();
System.out.println("Enter 3rd side: ");
double third = s.nextDouble();
double longsq = Math.pow(longest, 2);
double secondsq = Math.pow(second, 2);
double thirdsq = Math.pow(third, 2);
double secthirdsq = secondsq + thirdsq;
double SecLongLength = second + 1 ;
if (secthirdsq==longsq) {
System.out.println("This triangle is an almost-Isosceles right triangle. ");
}
else if (secthirdsq!=longsq) {
System.out.println("This triangle is not a right triangle. ");
else (SecLongLength!=longest) {
System.out.println("This triangle is a right triangle, but not almost-Isosceles.");
}
}
}
}
我尝试运行代码后出现这些错误。基本上,如果我输入分别为5,4和3的数字分别为最长,第二和第三,我应该得到“这个三角形是一个几乎等腰直角三角形”,因为“Almost Isosceles Right Triangle”是一个直角三角形的数字是一个相互之间的整数,这个功能有效。当我输入10,8和6这样的数字时,我应该得到这个输出:“这个三角形是一个直角三角形,但几乎不是等腰形。”但是,我得到以下错误。如果然后它给了我一个“;”我试图让它成为别的纠正错误,出现更多错误。我该怎么做才能得到我想要的输出?
FantahunKeburAlmostIsoscelesRightTriangle.java:33:错误:'else'没有'if' 别的(SecLongLength!=最长的){ ^
FantahunKeburAlmostIsoscelesRightTriangle.java:33:错误:不是声明 别的(SecLongLength!=最长的){ ^
FantahunKeburAlmostIsoscelesRightTriangle.java:33:错误:';'预期 别的(SecLongLength!=最长的){
答案 0 :(得分:1)
看看你的代码,这是错误的
else if (secthirdsq!=longsq) {
System.out.println("This .......");
else(SecLongLength!=longest) { // this else inside if without a if
System.out.println("This .....");
}
}
if
必须有else
。很明显,else
没有if
会有什么意义?
您可以按照以下顺序
if(condition1){
else if(condition2){
}else{
}
答案 1 :(得分:0)
有两件事是错的...... 1.结束括号 2. else分支..否则没有或者else-if有条件
else if (secthirdsq!=longsq) {
...
else (SecLongLength!=longest) {
...
}