java题目查找输入整数二进制中1的个数
描述
输入一个正整数,计算它在二进制下的1的个数。 注意多组输入输出!!!!!! 数据范围: 1 \le n \le 2^{31}-1 \1≤n≤231?1输入描述:
输入一个整数
输出描述:
计算整数二进制中1的个数
示例1
输入:5输出:
2说明:
5的二进制表示是101,有2个1
示例2
输入:0输出:
0
1 import java.io.*; 2 import java.util.*; 3 4 public class Main{ 5 public static void main(String[] args) throws IOException { 6 Scanner sc = new Scanner(System.in); 7 8 while(sc.hasNext()) { 9 int n = sc.nextInt(); 10 String str = Integer.toBinaryString(n); 11 int count = 0; 12 for(int i =0; i < str.length(); i++) { 13 if(str.charAt(i) == '1') 14 count++; 15 } 16 System.out.println(count); 17 } 18 } 19 }