基本的に、ユーザー入力を2^31 -1
整数の形式で受け取り、奇数、偶数、ゼロの数を int で返すプログラムを作成する必要があります。例えば、
Input: 100
Output: 1 Odd, 0 Even, 2 Zeros // 1(Odd)0(Zero)0(Zero)
また
Input: 2034
Output: 1 Odd, 2 Even, 1 Zero // 2(Even)0(Zero)3(Odd)4(Even)
私はそれを考えすぎていると確信していますが、頭の回転を遅くすることはできません。誰でも助けることができますか?これはコードの 3 回目の繰り返しで、最初の 2 回は for ループで試行されました。
import java.util.Scanner;
public class oddEvenZero
{
public static void main(String[] args) {
Scanner scan = new Scanner (System.in);
int value;
int evenCount = 0, oddCount = 0, zeroCount = 0;
System.out.print("Enter an integer: ");
value = scan.nextInt();
while (value > 0) {
value = value % 10;
if (value==0)
{
zeroCount++;
}
else if (value%2==0)
{
evenCount++;
}
else
{
oddCount++;
}
value = value / 10;
}
System.out.println();
System.out.printf("Even: %d Odd: %d Zero: %d", evenCount, oddCount, zeroCount);
}
}
申し訳ありませんが、コードはテキスト ボックスで奇妙にフォーマットされています。