如何不用循环判断一个数是否为2的幂
来源:互联网 发布:mac 终端命令大全 编辑:程序博客网 时间:2024/05/16 13:38
#include <iostream>
using namespace std;
int main()
{
int n;
if (n & (n - 1))
cout << "F";
else
cout << "T";
return 0;
}
到这里应该就有人看懂了,没看懂的往下看:
2的幂在内存中是以二进制存放的,并且有一个特点:它有且只有1个“1”,后面的都是0。
比如128就是1000 0000,128 - 1 = 127,也就是0111 1111,进行“按位且”操作后即为:
1000 0000
& 0111 1111
-----------
0000 0000
并不难推导出不是2的幂的数无此性质,那么我们可以认为,对于任何整数n,当n & (n - 1) == 0为真时,这个整数即为2的幂
- 如何不用循环判断一个数是否为2的幂
- 不用循环,如何判断一个数是2的幂
- 如何判断一个数是否为2的幂次方
- 不用循环语句,判断一个数是否是2的次方
- 判断是一个数是否是2的次方,不用循环
- 如何判断一个数是否为2的N次方
- 如何判断一个数是否为2的N次方
- 如何判断一个数是否为2的N次方
- 不用循环计算一个数是否是2的次方
- 如何判断一个正整数数x是否为2的幂
- java 如何判断一个数是否为2的整数次幂
- 判断一个数是否为2的整数次幂
- 判断一个数是否为2的幂?
- 判断一个数是否为2的整数次幂
- 判断一个数是否为2的次方幂
- 判断一个数是否为2的幂次
- 判断一个数是否为2的次方幂
- 给定一个数判断是否为2的幂
- OpenGL学习笔记 (6) —— 纹理映射
- 考生号考场号座位号的编排方法
- java 设计模式 学习笔记(4) 策略模式
- ubuntu linuxqq_v1.0.2_i386.tar.gz 安装方法
- QtQuick 与 C++ 的结合
- 如何不用循环判断一个数是否为2的幂
- Inline Hook 之(监视任意函数)
- 近期开发技术整理总结
- 寻求ACM-ICPC方面的东东
- C++的一些细节
- kqueue example
- SQL2005 With as 公用表表达式,实现递归取数
- 《VC++专题研究》系列之-1- 本系列课程综述
- jetway_loves_programming之c#初学——登录界面程序