参考代码:
import java.util.Scanner; public class Main { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub /*给定L,R。统计[L,R]区间内的所有数在二进制下包含的“1”的个数之和。 如5的二进制为101,包含2个“1”。*/ Scanner scanner=new Scanner(System.in); int a=scanner.nextInt(); int b=scanner.nextInt(); int sum=0; for (int i = a; i <=b; i++) { String s = Integer.toBinaryString(i);//将十进制数转成字符串 for (int j = 0; j < s.length(); j++) { if (s.charAt(j)=='1') { sum++; } } } System.out.println(sum); } }
0.0分
1 人评分
C二级辅导-计负均正 (C语言代码)浏览:592 |
C语言程序设计教程(第三版)课后习题8.9 (C语言代码)浏览:650 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:758 |
【明明的随机数】 (C++代码)浏览:779 |
程序员的表白 (C语言代码)浏览:654 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:587 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:993 |
WU-拆分位数 (C++代码)浏览:779 |
DNA (C语言代码)浏览:540 |
数组与指针的问题浏览:716 |