java - 编写一个接受整数参数的方法,该参数返回该数字除以 2 的倍数
问题描述
我认为标题本身几乎是不言自明的。
例如,如果我输入 128,它应该打印 7。
如果我输入一个奇数,它应该打印 0。
我的代码是
public static int divideBy2 (int number){
int count=0;
while (number%2==0){
count++;
}
return count;
}
我确实理解为什么它不起作用,但我想不出其他任何东西。
我是初学者,我应该使用while循环。
任何帮助,将不胜感激。
(这不是重复的。那篇文章是关于 2 适合这个数字多少次,但我的问题是关于将数字重复除以 2。)
解决方案
如果是可整除的,你需要再除以二,你不觉得吗?
while (number%2==0) {
number /=2;
count++;
}
推荐阅读
- javascript - 在javascript中,以下代码如何工作
- react-native - react-native 中的 Metro bundler 是什么?
- delphi - Delphi TThread 句柄错误
- flutter - 全局减慢 Flutter 中的动画
- c++ - C++ 11 thread_local 和“外来”线程
- swift - 显示带有非身份快速转换的preferredTransform的过滤视频文件
- asp.net-core - 我们可以回到 .net 核心中间件管道吗
- c# - 新的命名约定?VS 2017告诉我我的私有属性和方法应该以大写字母开头
- vba - Excel vba日期过滤器并复制到新工作表
- c# - NSubstitute - 模拟任何参数的参数行为