您的位置:首页 > 其它

二进制数中1的个数相同

2016-04-20 17:20 267 查看
         
#include<iostream>
using namespace std;
int main()
{
int n, a, b, d, m;
do{
cin >> n;

} while (n <= 0);
a = n; b = 0;
while (a)
{
b += a & 1;
a >>= 1;
}
m = n;
do
{
d = 0; m++;
a = m;
while (a)
{
d += a & 1; a >>= 1;

}
} while (d != b);
cout << m << endl;
return 0;

}


给定一个大于0的整数n,把它转换为二进制,则其二进制数中至少有1位是“1”。编写一个程序,找出比给定的整数n大的最小整数m。要求m 和 n 两个整数转换成二进制数后,二进制数中包含的1的个数相同
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: