问题描述
嗨,我正在制作一个方法,该方法可以将整数作为参数并计算其二进制形式具有多少个零。因此,例如,如果我有binaryZeros(44),则其二进制形式为101100。因此,binaryZeros(44)应该返回3。但是,我犯了一些错误,无法确定它的来源。如果有人可以指出我在哪里出错,或者我对这个问题的解决方法(逻辑)足够好,我将不胜感激。谢谢! 我的代码如下:
public static int binaryZeros(int n) {
int zeroCount = 0;
double m = n;
while (m >= 0.0) {
m = m / 2.0;
if (m == Math.floor(m)) {
zeroCount++;
} else {
m = Math.floor(m);
}
}
return zeroCount;
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)