我怎样才能停止这个循环语句
How can I stop this looping statement
我想要一个代码,它会一直告诉您输入两个数字,直到您输入两个偶数倍数为止。我正在为此任务使用循环语句,当我 运行 我的代码和我键入两个不是偶数倍数的数字时,它一直说 "Please enter even multiples"。请帮我。提前致谢。这是我的代码。
public class looper {
public static void main (String[] args) {
float firstNumber = 0;
float secondNumber = 0;
float finalNumber = 0;
java.util.Scanner input=new java.util.Scanner(System.in);
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
finalNumber = firstNumber % secondNumber;
System.out.println(secondNumber + " and " + firstNumber + " are even multiples.");
while(finalNumber != 0) {
System.out.println("Please enter even multiples.");
}
}
}
您需要设置 finalNumber
的值,使其满足 while
循环的终止条件。你可能想做这样的事情(我还没有编译这段代码!):
while (finalNumber != 0){
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
finalNumber = firstNumber % secondNumber;
}
System.out.println(secondNumber + " and " + firstNumber + " are even multiples.");
您需要使用 if 语句,因为您只想通知用户输入的数字不正确
do{
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
finalNumber = firstNumber % secondNumber;
if(finalNumber!=0)
System.out.println("values not correct ");
}while(finalNumber!=0);
在计算 while
循环的条件时要小心。 如果不更新用于检查循环内部的变量,您将进入进入无限循环。
这里重要的是您需要用户提供两个值。您 真的 不需要第三个变量来跟踪它,具体取决于您的编写方式,但可以这样编写:
- 获取值#1
- 获取值#2
- 同时
value1 % value2 == 0
...
- ...打印消息并再次从用户那里检索值 #1 和值 #2。
- 打印完成消息。
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
while(firstNumber % secondNumber != 0) {
System.out.println("Please enter two numbers that are multiples of each other.");
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
}
// afterwards, print whatever message you require.
如果你不使用while没有问题,那就使用if条件。制作两个独立的功能。一个是检查调用另一个条件以获得结果的条件。这是一个示例代码。希望,它会对你有所帮助。抱歉英语不好。
public class Looper
{
public static void main (String[] args)
{
Looper looper = new Looper();
looper.runTest();
}
public void runTest()
{
float finalNumber = getResult();
System.out.println("finalNumber: " + finalNumber);
if(finalNumber != 0.0)
{
System.out.println("Please enter even multiples.");
runTest();
}
}
public float getResult()
{
java.util.Scanner input=new java.util.Scanner(System.in);
System.out.println("Enter your first number.");
float firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
float secondNumber = input.nextFloat();
float finalNumber = firstNumber % secondNumber;
System.out.println(secondNumber + " and " + firstNumber + " are even multiples.");
return finalNumber;
}
}
我想要一个代码,它会一直告诉您输入两个数字,直到您输入两个偶数倍数为止。我正在为此任务使用循环语句,当我 运行 我的代码和我键入两个不是偶数倍数的数字时,它一直说 "Please enter even multiples"。请帮我。提前致谢。这是我的代码。
public class looper {
public static void main (String[] args) {
float firstNumber = 0;
float secondNumber = 0;
float finalNumber = 0;
java.util.Scanner input=new java.util.Scanner(System.in);
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
finalNumber = firstNumber % secondNumber;
System.out.println(secondNumber + " and " + firstNumber + " are even multiples.");
while(finalNumber != 0) {
System.out.println("Please enter even multiples.");
}
}
}
您需要设置 finalNumber
的值,使其满足 while
循环的终止条件。你可能想做这样的事情(我还没有编译这段代码!):
while (finalNumber != 0){
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
finalNumber = firstNumber % secondNumber;
}
System.out.println(secondNumber + " and " + firstNumber + " are even multiples.");
您需要使用 if 语句,因为您只想通知用户输入的数字不正确
do{
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
finalNumber = firstNumber % secondNumber;
if(finalNumber!=0)
System.out.println("values not correct ");
}while(finalNumber!=0);
在计算 while
循环的条件时要小心。 如果不更新用于检查循环内部的变量,您将进入进入无限循环。
这里重要的是您需要用户提供两个值。您 真的 不需要第三个变量来跟踪它,具体取决于您的编写方式,但可以这样编写:
- 获取值#1
- 获取值#2
- 同时
value1 % value2 == 0
...- ...打印消息并再次从用户那里检索值 #1 和值 #2。
- 打印完成消息。
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
while(firstNumber % secondNumber != 0) {
System.out.println("Please enter two numbers that are multiples of each other.");
System.out.println("Enter your first number.");
firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
secondNumber = input.nextFloat();
}
// afterwards, print whatever message you require.
如果你不使用while没有问题,那就使用if条件。制作两个独立的功能。一个是检查调用另一个条件以获得结果的条件。这是一个示例代码。希望,它会对你有所帮助。抱歉英语不好。
public class Looper
{
public static void main (String[] args)
{
Looper looper = new Looper();
looper.runTest();
}
public void runTest()
{
float finalNumber = getResult();
System.out.println("finalNumber: " + finalNumber);
if(finalNumber != 0.0)
{
System.out.println("Please enter even multiples.");
runTest();
}
}
public float getResult()
{
java.util.Scanner input=new java.util.Scanner(System.in);
System.out.println("Enter your first number.");
float firstNumber = input.nextFloat();
input.nextLine();
System.out.println("Enter your second number.");
float secondNumber = input.nextFloat();
float finalNumber = firstNumber % secondNumber;
System.out.println(secondNumber + " and " + firstNumber + " are even multiples.");
return finalNumber;
}
}