gpt4 book ai didi

java - 如果出现问题,我怎样才能返回到程序的开头?

转载 作者:行者123 更新时间:2023-12-01 21:13:07 25 4
gpt4 key购买 nike

简短的问题:万一出现问题,如何返回到代码的开头?

更详细一点:在我的代码末尾,我有一个名为“tulemus”的 int 变量。我希望它告诉我“Tulemus 错了,请再试一次!”如果(tulemus < 0 && tulemus > 110)为 true,并且还返回到用户输入数字的行( System.out.println("Sisesta 1. iseseisva töö tulemused(0-20 punkti): "); String str = input.readLine(); ),以允许重新执行此操作而无需重新启动程序。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Yl1osaB {

public static void main(String[] args) throws IOException {

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

System.out.println("Ylesanne 1 RASMUS RIKKEN 25/11/2016");

System.out.println("Sisesta oma nimi:");
String nimi = input.readLine();
System.out.println("Sinu nimi:" + nimi);

System.out.println("Sisesta 1. iseseisva töö tulemused(0-20 punkti): ");
String str = input.readLine();
int number1 = Integer.parseInt(str);

if (number1 > 20) {
System.out.println("Sisestatud number on suurem kui max tulemus.");

} else if (number1 < 0) {
System.out.println("Sisestatud number on väiksem kui min tulemus.");

}

System.out.println("Sisesta 2. iseseisva töö tulemused(0-20 punkti): ");
String str2 = input.readLine();
int number2 = Integer.parseInt(str2);
System.out.println("Iseseisev 1 ja 2 tulemused:" + (number2 + number1));

if (number2 > 20) {
System.out.println("Sisestatud number on suurem kui maxtulemus.");
return;
} else if (number2 < 0) {
System.out.println("Sisestatud number on väiksem kui min tulemus.");
return;
}
System.out.println("Sisesta 3. iseseisva töö tulemused(0-20 punkti): ");
String str3 = input.readLine();
int number3 = Integer.parseInt(str3);
System.out.println("Iseseisev 1 ja 2 ja 3 tulemused:" + (number2 + number1 + number3));

if (number3 > 20) {
System.out.println("Sisestatud number on suurem kui max tulemus.");
return;
} else if (number3 < 0) {
System.out.println("Sisestatud number on väiksem kui min tulemus.");
return;
}
System.out.println("Sisesta koduste tööde punktid(max 10 punkti): ");
String str4 = input.readLine();
int number4 = Integer.parseInt(str4);
System.out.println("Iseseisev 1 ja 2 ja 3 ja koduste ül. tulemused:" + (number2 + number1 + number3 + number4));

if (number4 > 10) {
System.out.println("Sisestatud number on suurem kui max tulemus.");
return;
} else if (number4 < 0) {
System.out.println("Sisestatud number on väiksem kui min tulemus.");
return;
}

System.out.println("Sisesta eksami punktid(max 40 punkti): ");
String str5 = input.readLine();
int number5 = Integer.parseInt(str5);
System.out.println("Iseseisev 1 ja 2 ja 3 ja koduste ül. ja eksami tulemused:"
+ (number2 + number1 + number3 + number4 + number5));

if (number5 > 40) {
System.out.println("Sisestatud number on suurem kui eksami max tulemus.");
return;
} else if (number5 < 0) {
System.out.println("Sisestatud number on väiksem kui eksami min tulemus.");
return;
}
int tulemus = 0;
tulemus = number1 + number2 + number3 + number4 + number5;

if (tulemus > 0 && tulemus < 50) {
System.out.println("Tulemus on " + tulemus + ", mis on alla 50 punkti, Aine on mittearvestatud.");
} else if (tulemus <= 110) {
System.out.print("Kokku on " + tulemus + " punkti. Aine on arvestatud!");
}
if (tulemus <= 110 && tulemus >= 91) {
System.out.print(" Suurepärane!");
}

else if (tulemus <= 90 && tulemus >= 81) {
System.out.print(" Väga hea!");
}

else if (tulemus <= 80 && tulemus >= 71) {
System.out.print(" Hea!");
}

else if (tulemus <= 70 && tulemus >= 61) {
System.out.print(" Rahuldav!");
}

else if (tulemus <= 60 && tulemus >= 51) {
System.out.print(" Kasin!");
} else if (tulemus <= 50 && tulemus >= 0) {
System.out.print(" Puudulik!");
}

} // MAIN
} // CLASS

最佳答案

学习Java语言,你会发现while循环或者do-while循环就是你想要的。只需在循环之前定义 tulemus 即可在条件中检查它,或者在循环外部定义一些您在循环内相应设置的 boolean 值,或者使用 while(true) { } 进行无限循环然后使用 break; 退出循环如果您的失败条件不匹配。

除此之外(tulemus < 0 && tulemus > 110)永远是false .

所以类似

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Yl1osaB {

public static void main(String[] args) throws IOException {

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

System.out.println("Ylesanne 1 RASMUS RIKKEN 25/11/2016");

while (true) {

// your code

if(tulemus < 0 || tulemus > 110) {
System.out.println("Tulemus is wrong, please try again!");
}
else {
break;
}
}

} // MAIN
}

关于java - 如果出现问题,我怎样才能返回到程序的开头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40803896/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com