作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的程序不将 0 算作偶数我不想只在 while 循环中使用 for 语句谢谢
导入java.util.*;
公共(public)课 DigitAnalyst {
public static void main(String[] args) {
int zero=0;
int lastdigit;
Scanner inputNumber= new Scanner(System.in);
System.out.println("enter any number: ");
int number = inputNumber.nextInt();
while(number > 0)
{
int zeros=0;
int odds=0;
int evens=0;
while(number > 0)
{
number=number/10;
lastdigit=number%10;
if (lastdigit==zero)
zeros++;
if (lastdigit % 2 == zero)
evens++;
if (lastdigit % 2 != zero)
odds++;
}
System.out.println(odds +" odd digits");
System.out.println(evens +" even digits");
System.out.println(zeros +" zero digits");
}
}
}
最佳答案
根据您的代码,它确实将 0
计为偶数,因为 0 % 10 == 0
。
但我认为你的问题来自 number=number/10;
,它是在进入循环时执行的。
尝试将此语句放在循环末尾:
while (number > 0) {
lastdigit = number % 10;
// increment counters
number = number / 10;
}
关于java - 如何在Java中计算多位数中奇数、偶数和零的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26006563/
我是一名优秀的程序员,十分优秀!