题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
https://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
描述
输入一个 int 型的正整数,计算出该 int 型数据在内存中存储时 1 的个数。 数据范围:保证在 32 位整型数字范围内
输入描述:
输入一个整数(int类型)
输出描述:
这个数转换成2进制后,输出1的个数
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int num = scanner.nextInt(); int n = -1; int count = 0; boolean loop = true; while (loop) { n = num % 2;// 余数 if (n == 1) {// 余数等于1,就计一个数 count++; } num = num / 2;// 得到的除数 if (num == 0) {// 除数等于0,就结束。 loop = false; } } System.out.println(count); } }