2014-12-11 50 views
1
package gpatogradecalculator; 

import java.util.Scanner; 

public class GPAtoGradeCalculator { 

    public static void main(String[] args) { 
     // TODO code application logic here 

     double GPA = 0.0; 

     Scanner response = new Scanner(System.in); 

     System.out.println("Please enter your GPA: "); 

     GPA = response.nextDouble(); 

     if(GPA >= 3.5); { 
      System.out.println("Your GPA is an A."); 


    } else if(3.0<=GPA && GPA<3.5); { 
      System.out.println("Your GPA is a B."); 


    } else if(2.5<=GPA && GPA <3.0); { 
      System.out.println("Your GPA is a C."); 

    } 
     if(GPA < 2.5); { 
      System.out.println("You are failing."); 
    } 

     } // end main 

} // end class 

有谁能告诉我为什么这不起作用吗?我甚至不知道从哪里开始修复它。它说,我的别的行是没有如果,但如果是对他们之上......GPA编号为GPA信件计划。不知道为什么它不起作用

+1

希望你意识到你可以简化最后3条if语句来测试第一个条件。由于这些是其他子句,因此您已经检查过它是否更高。 – RobP 2014-12-11 00:49:06

+1

'if()'后面不需要分号。最后一个if(> 2.5)应该是'else if'。此外,标题是坏的,它应该是错误的名称,这与GPA无关:) – 2014-12-11 00:49:20

回答

2

if()或感更好条件语句

摆脱所有;的例如:

if(GPA < 2.5); { 
     System.out.println("You are failing."); 
} 

变化

if(GPA < 2.5) { 
     System.out.println("You are failing."); 
} 

做同样的过程对其他的if语句以及

+0

感谢您的快速响应!它非常完美!有没有办法快速循环程序,以便最终用户可以输入多次?我想要它做的是要求他们的第一个输入,提供反馈,然后询问他们是否要输入另一个输入。如果他们不那么程序结束,但如果他们这样做要求另一个输入。可能? – 2014-12-11 00:50:51

+0

是的,请问另一个问题,以便我们可以详细地谈论它 – 2014-12-11 00:52:15

+0

我不能问90分钟的另一个问题。 – 2014-12-11 01:02:42

2

删除if(GPA >= 3.5); {和类似if语句中的分号。

2

删除条件语句后的;

+0

让你投票赞成条件陈述 – 2014-12-11 00:53:32

0

不要在每个if后面加分号。