gpt4 book ai didi

java - While 循环仅检查用户输入的正整数

转载 作者:行者123 更新时间:2023-11-30 07:38:31 24 4
gpt4 key购买 nike

我需要帮助实现一个循环,不断告诉用户仅输入正整数,但我不知道从哪里开始。有人能帮我吗。

import java.util.Scanner;

public class GCD {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

System.out.print("Enter a positive integer: ");
int firstN = input.nextInt();

System.out.print("Enter another positive integer: ");
int secondN = input.nextInt();

System.out.println("The GCD of " + firstN + " and " + secondN + " is: " + gCd(firstN, secondN));

}

public static int gCd(int firstN, int secondN) {
if(secondN == 0) {
return firstN;
} else
return gCd(secondN, firstN%secondN);
}

}

最佳答案

在您的情况下,您需要用户至少输入一次内容。但是,您希望不断要求用户输入某些内容,直到其有效为止。

在我看来,do-while 循环是编写此逻辑的最清晰的方法,因为它完全可以满足您的需求,而无需任何无关的修改。

例如,

    Scanner input = new Scanner( System.in );
int firstN;
do {
System.out.println( "Enter a positive integer:" );
firstN = input.nextInt();
} while ( !(firstN > 0) );

do-while 循环的工作原理是首先执行“do”部分,然后检查“while”条件。因此,您首先向用户询问一个号码,如果您不喜欢它,您就继续向他们询问另一个号码。

如果有任何不清楚的地方,请告诉我!

编辑:

如果你想在数字为负数时给用户一个错误消息,那么你需要考虑修改算法。你想要

  1. 询问用户一个号码(不显示错误消息)
  2. 只要该数字不是正数,就告诉用户这是 Not Acceptable ,并要求提供另一个数字。

我假设您了解 Java 中的各种循环,例如 forwhiledo-while。看看您是否可以自己编写此逻辑的代码,如果遇到问题,请发表评论。

关于java - While 循环仅检查用户输入的正整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35029469/

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