Java 条件与循环练习

Java 条件与循环练习,java,Java,我一直在做一个练习,上面写着“编写一个程序,确定并打印从键盘读取的整数值中的奇数、偶数和零位数。我做错了什么,如何纠正我的错误?” import java.util.Scanner; public class OddEven { public static void main(String[] args){ Scanner scan = new Scanner(System.in); int odd=0; int even=0; int zero=0; i

我一直在做一个练习,上面写着“编写一个程序,确定并打印从键盘读取的整数值中的奇数、偶数和零位数。我做错了什么,如何纠正我的错误?”

import java.util.Scanner;

public class OddEven {
   public static void main(String[] args){
   Scanner scan = new Scanner(System.in);

   int odd=0;
   int even=0;
   int zero=0;
   int num=0;
   int value;

   System.out.println("Enter a value: ");
   value=scan.nextInt();
   if (value%2==0)
       even=even+1;
   else
       odd=odd+1;
   System.out.println("even = "+ even);
   System.out.println("odd = "+odd);
   System.out.println("zero = "+zero);
   }
}

您必须一次检查每个数字:

int odd, even, zero, value;
value = scan.nextInt();

while(value > 0) {
    int digit = value%10; //isolates only the last digit
    if(digit==0)zero++;
    else if(digit%2==0)even++;
    else odd++;
    value /= 10; //removes the last digit
}

条件语句

if (value%2==0)
    even=even+1;
else
    odd=odd+1;
不计算奇数或偶数。它只确定输入的值(整个值)是奇数还是偶数

由于这显然是一个家庭作业问题,我只给出一些提示:

  • 在十进制系统中,有一种简单的整数方法,可以将最后一个数字和剩余的数字作为一个新的但较小的整数值
  • 一旦你有了一个(最后一个)数字,你就可以检查它是奇数、偶数还是零
  • 当步骤1中的剩余值为0时,循环结束。请注意:开始时必须进行特殊检查,因为原始值可能已经为0

  • 看看已经为您提供了一些代码的其他答案。但是作为初学者,您确实应该首先尝试自己编写代码。

    您的代码编译时没有错误吗?如果它编译了,它是什么,您期望什么。我在标题中看到了“循环”,但在代码中没有看到任何循环。