判断整数为2的阶次方(禁用api)

写出代码判断一个整数是不是2的阶次方(请代码实现,谢绝调用API方法)

public class Demo2 {
public static boolean check(int sum) {
boolean flag = true; //判断标志
while(sum > 1) {
if (sum % 2 == 0) {
sum = sum/2;
} else {
flag = false;
break;
}
}
return flag;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int sum = scanner.nextInt();
System.out.println(sum + " 是不是2的阶次方:" + check(sum));
}
}

posted @ 2022-07-26 09:38  开源遗迹  阅读(140)  评论(0)    收藏  举报