package com.xgk.chapterone;
import java.util.Scanner;
public class T1_5 {
//压制异常
@SuppressWarnings("all")
public static void main(String[] args) {
int n = 0;
Scanner sc = new Scanner(System.in);
System.out.println("Enter your number:");
n = sc.nextInt();
System.out.println(binaryCountone(n));
}
private static int binaryCountone(int n) {
int count = 0;
//递归跳出条件
if (n == 1) {
return 1;
} else {
//如果整数n是奇数,则其中“1”的个数为n/2的“1”的个数加一
if (n % 2 != 0) {
count += binaryCountone(n / 2) + 1;
} else {
//如果整数n是偶数,则其中“1”的个数与n/2的“1”的个数相同
count += binaryCountone(n / 2);
}
}
return count;
}
}
Java基础之计算十进制整数的二进制格式中“1”的个数
最新推荐文章于 2023-04-24 08:21:43 发布