`
meikebo
  • 浏览: 16516 次
社区版块
存档分类
最新评论

判断一个数是不是2的阶次方数

    博客分类:
  • JAVA
阅读更多
方法一:
package com.judge;

public class DevideTwo {
	
	public static boolean isDeTwo(int n)
	{
		float tem = (float)n;
		while(true)
		{
			tem=tem/2;
			if(tem<2.0)
				break;
		}
		if(tem==1.0)
			return true;
		else
			return false;
	}
	
	public static void main(String[] args)
	{
		System.out.println(isDeTwo(256));
	}

}


方法二:(最好方法)
package com.judge;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class ExcellectDevTwo {
	
	public static int getData() throws IOException
	{
		BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
		return Integer.valueOf(reader.readLine());
	}
	
	public static boolean isDevTwo(int n)
	{
		if((n&(n-1))==0&&(n!=0))
			return true;
		else
			return false;
	}
	
	public static void main(String[] args)
	{
		try {
			System.out.println(isDevTwo(getData()));
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}

分享到:
评论

相关推荐

    【面向对象的程序设计c++】4 用两种方法判断一个数是不是2的阶次方数(方法二)

    // 作业题:4 用两种方法判断一个数是不是2的阶次方数 /* 方法二: 1 由2的n次方的“二进制” 只有 最高位是1 其余为0 例如(“8”的二进制为 “100”) 2 减1后 最高位为0 其余为1 (“7”的二进制为 "011") 3...

    【面向对象的程序设计c++】4 用两种方法判断一个数是不是2的阶次方数(方法一)

    作业题:4 用两种方法判断一个数是不是2的阶次方数 方法一: 该数除以2,得到商和余数,如果余数不为0,那这个数就不是2的整数次幂 否则再用商除以2,又得到商和余数,重复上面的操作,直到商为1, 当商为1,余数为0时,...

    模型阶次辨识(算例及matlab程序)

    一、 利用行列式比估计模型的阶次 2 二、 利用残差的方差估计模型的阶次 3 三、 利用Akaike准则估计模型的阶次 4 四、 利用最终预报误差准则估计模型的阶次 5 五、 根据Hankel矩阵的秩估计模型的阶次 7 附录1 利用...

    几个算法、技巧等等等等等

    在文档"判断一个数字是否为2的阶次方数.doc"中,可能会讲解到具体的位运算技巧,如使用位移操作符(和&gt;&gt;)和位与操作符(&),以及相应的优化算法。 在实际应用中,掌握这些基础知识和技巧能够显著提高我们的编程...

    线形代数-行列式线形代数-行列式的有关公式

    这个简单的例子展示了如何利用行列式的定义来计算一个2阶行列式的值。 **案例2:** \[ \begin{vmatrix} 1 & x & x^2 \\ 1 & x + 1 & (x + 1)^2 \\ 1 & x + 2 & (x + 2)^2 \end{vmatrix} = -x(x + 1)(x + 2) \] ...

    电气自动化专升本自动控制仿真试题

    1. 阻尼比是衡量系统动态性能的一个参数,系统类型和阶次可以通过系统结构和闭环极点数量确定。 2. K、无阻尼自然振荡频率ωn、有阻尼自然振荡频率ωd的计算依赖于系统参数。 3. 开环传递函数可由系统结构直接得出。...

    福州大学有限元考试题借鉴.pdf

    - 不同类型的单元(梁、壳、实体)不能混用在一个模型中,因为它们代表不同的物理行为。 - 四边形平面单元应尽量接近正方形以提高数值稳定性和精度。 - 平面应变单元和应力单元在处理方式不同,即使单位厚度处理...

    python计算方程式根的方法

    当找到一个根后,通过多项式消去可以降低多项式的阶次,从而简化后续根的求解过程。 - **主要步骤** 1. 初始化根数组 `roots` 和随机选择初始值。 2. 使用拉格朗日方法求解当前多项式的单个根。 3. 判断所求得...

    电机振动噪声基础及仿真分析.pdf

    总而言之,电机振动与噪声的控制和分析是电机设计和优化中的一个关键环节。通过理解振动噪声的分类、产生机理以及对电磁力阶数、模态阶数和噪声阶次等概念的深入掌握,可以更有效地对电机进行设计和优化,实现噪声...

    模拟电路华为讲义下

    根据提供的信息,我们可以推断这份文档是华为内部关于模拟电路的培训材料的一部分。虽然文档中的具体内容大多被占位符文本所替代,我们仍然可以根据标题、描述以及部分可见的文字来推测和整理出相关的知识点。 ### ...

Global site tag (gtag.js) - Google Analytics