我试图添加从多个if语句获取的多个值。所以我用if语句试了一下,我得到一个错误,说明totaltopFinal和totaltopFinal1没有在代码行'overallCompletion = totaltopFinal + totaltopFinal1'中初始化,实际上它们的值是基于用户通过如果声明。保留通过if语句的值
下面是一段代码:
while(t !=0){
if(t == 30){
//Loop for parameters of array
System.out.println("What is the number of students taking the exam?");
BufferedReader st = new BufferedReader(new InputStreamReader(System.in));
String d = null;
try {
d =st.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int s = Integer.parseInt(d);
totalTop = thirtyMin[0] * s;
totalTop1 = totalTop * constPercent[0];
totalTop2 = thirtyMin[1] * s;
totalTop3 = totalTop2 * constPercent[1];
totalTop4 = thirtyMin[2] * s;
totalTop5 = totalTop4 * constPercent[2];
totalTop6 = thirtyMin[3] * s;
totalTop7 = totalTop6 * constPercent[3];
totalStudents = s + totalStudents;
totaltopFinal = totalTop1 + totalTop3 + totalTop5 + totalTop7;
averageTotal = totaltopFinal/totalStudents;
x = Math.log(averageTotal);
almostTotal = -21.6 * x;
completeTotal = almostTotal + 156.8;
System.out.println("The average of students who can take an exam in a hour is:" + completeTotal);
}
if(t == 45){
//Loop for parameters of array
System.out.println("What is the number of students taking the exam?");
BufferedReader st = new BufferedReader(new InputStreamReader(System.in));
String d = null;
try {
d =st.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int s = Integer.parseInt(d);
totalTop = thirtyMin[0] * s;
totalTop1 = totalTop * constPercent[0];
totalTop2 = thirtyMin[1] * s;
totalTop3 = totalTop2 * constPercent[1];
totalTop4 = thirtyMin[2] * s;
totalTop5 = totalTop4 * constPercent[2];
totalTop6 = thirtyMin[3] * s;
totalTop7 = totalTop6 * constPercent[3];
totalStudents = s + totalStudents;
totaltopFinal1 = totalTop1 + totalTop3 + totalTop5 + totalTop7;
}
overallCompletion = totaltopFinal + totaltopFinal1;
}
你在哪里宣布totaltopFinal和totaltopFinal1 – varatis 2012-01-27 23:43:49
我在程序开始时声明了它们。我只是宣布他们是一个双。 – thehoule64 2012-01-27 23:46:39
这是一项家庭作业吗?在这种情况下,你应该用“作业”来标记它。 – posdef 2012-01-27 23:55:22