否则,如果错误阻碍了正确输出的代码

时间:2014-09-16 04:27:31

标签: java

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!=最长的){

2 个答案:

答案 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) {
 ...
}