问题描述
我的问题是,当输入超过 50 时,语句“数字必须低于 50!”仍然从循环中打印出来。
这是我的代码:
import java.util.Scanner;
class Main {
public static void main (String args[]){
Scanner input = new Scanner(system.in);
int counter=0;
int num = input.nextInt();
for (int i=0; i<=num; i++)
{
if (num >= 0 && num<=50) {
System.out.print (i + " ");
}
else {
System.out.print ("Number must be below 50!");
}
}
System.out.println ();
}
}
Number must be below to 50!Number must be below to 50!Number must be below to 50!......
如何从循环中排除语句?
解决方法
将循环放在 if
语句中。
伪代码:
if(num >= 0 and num<=50){
loop...
else
print("num must be below 50")
,
运行以下代码应该会得到您想要的结果:
System.out.println("Enter a number below 50:");
Scanner input = new Scanner(System.in);
int num = input.nextInt();
if (num < 50)
{
System.out.println("Counting down from " + num);
for (int i = 0; i <= num; i++) {
System.out.print(i + ",");
}
}
else System.out.print("Number must be below 50!");
,
只需改变线的使用。
class Main {
public static void main (String args[]) {
Scanner input = new Scanner(System.in);
int counter=0;
int num = input.nextInt();
if(num>50) {
System.out.print ("Number must be below 50!");
}
for (int i=0; i<=num; i++)
{
if (num >= 0 && num<=50) {
System.out.print (i + " ");
}
}
System.out.println ();
}
}