Java输入一个整数n求2到n进制的数字和
时间: 2024-09-24 10:20:29 浏览: 33
用java如何将十进制整数转成二进制和十六进制形式(csdn)————程序.pdf
在Java中,你可以通过循环计算每个二进制位的值并累加的方式来得到从2到n的所有整数的二进制表示的和。这里是一个简单的示例:
```java
public class Main {
public static void main(String[] args) {
int n = 5; // 将这个变量替换为你想要的整数
int sumOfBinaryDigits = binarySumFromTwoToN(n);
System.out.println("The sum of binary digits from 2 to " + n + " is: " + sumOfBinaryDigits);
}
// 函数用于计算给定范围内所有整数的二进制表示之和
public static int binarySumFromTwoToN(int n) {
int sum = 0;
for (int i = 2; i <= n; i++) {
String binary = Integer.toBinaryString(i); // 转换为二进制字符串
for (char digit : binary.toCharArray()) { // 遍历每一位
if (digit == '1') {
sum += 1; // 如果是1,则累加
}
}
}
return sum;
}
}
```
在这个程序中,我们首先将2到n之间的每一个整数转换成二进制字符串,然后遍历每个字符串中的字符(即二进制位),如果字符是'1',我们就把1加到总和上。最后返回累计的和。
阅读全文