public class S1P3 {
public static void main (String[] args) throws Exception{
int num1 = (int)(Math.round(Math.random()*10));
int num2 = (int)(Math.round(Math.random()*10));
int sign = (int)(Math.round(Math.random()*3));
int answer;
System.out.println("\n\n*****");
if(sign==0)
{
System.out.println(num1+" * "+num2);
answer = num1*num2;
}
else if(sign==1)
{
System.out.println(num1+" / "+num2);
answer = num1/num2;
}
else if(sign==1)
{
System.out.println(num1+" - "+num2);
answer = num1-num2;
}
else
{
System.out.println(num1+" % "+num2);
answer = num1%num2;
}
System.out.println("*****\n");
System.out.println("3 ...");
Thread.sleep(1000);
System.out.println("2 ...");
Thread.sleep(1000);
System.out.println("1 ...");
Thread.sleep(1000);
System.out.println("ANSWER: "+answer);
}
}
我不明白两个“其他ifs”的符号如何等于2。该程序如何知道选择哪一个?因为2个选项等于1所以不意味着其中一个没有被使用?我使用的这本书有错字吗?我可以使用一些澄清,谢谢!
答案 0 :(得分:5)
这绝对是一个错字,第三个条件(第二个sign==1
)永远不会。它应该是if (sign == 2)
。
答案 1 :(得分:1)
小提示:打印出sign
变量。这样你就可以看到它是如何变化的。