【问题标题】:Looping with conditional statement使用条件语句循环
【发布时间】:2021-03-03 01:45:21
【问题描述】:

您好,我想学习如何进行 java 循环,该循环将确定数字是奇数还是偶数

   1st value: 8
   2nd value: 15

output:
    8 is even
    9 is odd
    10 is even
    11 is odd
    12 is even
    13 is odd
    14 is even
    15 is odd

【问题讨论】:

标签: java loops conditional-statements


【解决方案1】:

你可以这样做:

Scanner input = new Scanner(System.in);

System.out.print("First value: ");

int start = Integer.parseInt(input.nextLine());//Gets the first number

System.out.print("Second value: ");

int end = Integer.parseInt(input.nextLine());//Gets the second number

for(int i = start; i <= end; i++){
    if(i%2==0){//When the number is divided by 2, it gives a remainder of 0. Modulus helps us get the remainder.
        System.out.println(i+" is even");
    }else{//Doesn't satisfy the first condition. It must be odd.
        System.out.println(i+" is odd");
    }
}

我们使用 Scanner 读取用户输入,然后使用 for 循环并利用模数 (%)。模数计算一个数字除以某个数字后的余数。如果一个数除以 2 的余数为 0,这意味着它可以被 2 整除。我们可以构造一个 if 语句来检查它是否可以整除。

测试运行

First value: 1
Second value: 10
1 is odd
2 is even
3 is odd
4 is even
5 is odd
6 is even
7 is odd
8 is even
9 is odd
10 is even

【讨论】:

  • @YeshwinVermaTheProgrammer 谢谢:D
  • 我个人会更多地评论它(以解释您的想法)并稍微分解一下(有点难以阅读),但对我来说似乎很全面。
【解决方案2】:

你可以使用 for 循环,这很简单。

for(int i=8;i<=15;i++){
if(i%2==0){
System.out.println(i+"is even");
}else{


System.out.println(i+"is odd");
}
}

我希望你知道如何询问输入,所以只需将其传递到 8 和 15 的位置

【讨论】:

    【解决方案3】:

    短版:

    https://www.youtube.com/watch?v=cakN0XC6CcQ

    使用 number % 2 == 0 表示偶数。

    长版:

    
    // Create a new Scanner() to scan System.in
    Scanner scanner = new Scanner(System.in);
    
    // Get the two inputs
    int first = scanner.nextInt();
    int second = scanner.nextInt();
    
    // Start i as the first number
    // While it is less than or equal to the second
    // Add one each time
    for(int i = first; i <= second; i++) {
    
        // Is there a remainder from dividing i by 2?
        // If no, it's even
        boolean even = i % 2 == 0;
    
        // Print it
        System.out.println(i + " is even: " + even);
    }
    
        scanner.close();
    
    

    【讨论】:

    • 用户说他会要求 2 个输入,所以你的答案不正确,请编辑它并向他展示如何将输入范围附加到列表中
    • 对不起@YeshwinVermaTheProgrammer 我没有读到(必须更加小心!)。我已经修改了答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-07
    • 2020-11-21
    • 2017-03-10
    • 2018-05-27
    • 2017-03-23
    • 2011-10-23
    • 2015-02-10
    相关资源
    最近更新 更多