1 import java.util.Scanner;
2
3 /**
4 * 功能:用位运算,判断一个数是否为2的n次方。
5 * 思路:用1做移位操作,然后判断移位后的值是否与给定的数相同。
6 */
7 public class Main3 {
8
9 public boolean isPower(int n) {
10
11 if (n < 1) {
12 return false;
13 }
14
15 int m = 1;
16 while (m < n) {
17 m = m << 1;
18 }
19
20 if (m == n) {
21 return true;
22 }
23
24 return false;
25 }
26
27 public static void main(String[] args) {
28
29 Scanner scanner = new Scanner(System.in);
30 Main3 main3 = new Main3();
31
32 while (scanner.hasNext()) {
33
34 int n = scanner.nextInt();
35 System.out.println(main3.isPower(n));
36 }
37 }
38 }