标题:x是不是2的次方或x是否是1024的倍数怎么求?
只看楼主
AbduRahman1
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2021-11-16
结帖率:50%
已结贴  问题点数:10 回复次数:2 
x是不是2的次方或x是否是1024的倍数怎么求?
Description
        乔治·斯蒂比兹(George Stibitz ,1904-1995)被称为数字计算机之父,几乎在相同时期,他与德国工程师楚泽分别独立研制出了二进制数字计算机。

        所以对于程序员来说2和1024是两个特殊的数字,现在给你一个数,问你它是否是2的n次方(n可取0和任何正整数)或它是否是1024的倍数。

Input

        多组输入,每行读一个正整数x(1<=x<=40000)。

Output
        如果n满足题目里的任意一个条件,则输出“YES”,否则输出“NO”,行末无多余空格,并需要换行。

Samples
input
1
2
3
4
5
1024
2048
3072
output
YES
YES
NO
YES
NO
YES
YES
YES
搜索更多相关主题的帖子: 是否 次方 输出 Input Output 
2021-12-19 19:59
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:10 
程序代码:
#include <stdio.h>

int main( void )
{
    for( unsigned x; scanf("%u",&x)==1; )
        puts( (x&(x-1))==0 || (x&0x3ff)==0 ? "YES" : "NO" );
}
2021-12-20 09:22
AbduRahman1
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2021-11-16
得分:0 
回复 2楼 rjsp
感谢大佬
2021-12-22 19:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-507920-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.266099 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved