谁没有关灯?

来源:互联网 发布:网络成语 编辑:程序博客网 时间:2024/04/27 13:34
/* 题目描述   光明大厦的管理者发现员工下班后经常不关灯,造成极大的浪费。   为了节约用电,大厦引进了一个叫做TLS的新仪器,该仪器能够准确显示每个楼层各个房间灯的开关状态。   TLS的液晶显示屏宽度有限,所以TLS显示屏只用来显示十进制数,不显示二进制数。   例如:大厦的某一层有4个房间。第 1、4 房间亮灯,第 2、3 房间灯没有开。   则用二进制表示为1001,但是在TLS液晶显示屏为 9。   现在你能帮助大厦管理者设计一个程序,使得他看见TLS显示屏上的数字,   就能够判定出哪些房间没有关灯吗?并且计算出亮灯的总数吗?   给定一个十进制整数N,求其对应二进制数中1的个数 * 输入   第一个整数表示有N组测试数据,其后N行是对应的测试数据,每行为一个整数,   表示TLS显示的十进制数。 * 输出   N行,每行输出对应一个输入,表示实际亮灯的个数。 */#include <iostream>using namespace std;int main(){   int m,j,i,a[10];   cin>>m;   for(i=0;i<m;i++)   {       cin>>a[i];   }   for(i=0;i<m;i++)   {       int n=0;       do       {           a[i]=a[i]/2;           j=a[i]%2;           n+=j;       }while(a[i]!=1);       cout<<n;       cout<<endl;   }    return 0;}


运行结果:

说说:

我就纳闷了,我这个程序怎么了,在OJ平台上发表就是不对呢,有点怀疑这个平台了。。。。。

原创粉丝点击