/**
* 判断键盘输入的某个数a是否为2的阶次方书
* 原理:将该数转化为二进制,如果是则该数第一位为1,其余位为0,那么a&(a-1)==0
* 注意java书写的结构
*/
package others;
//import java.io.*;
import java.util.Scanner;
//class InputData{ //定义从键盘输入数据的类,即该类负责从键盘接收数据
// private static String s = "";
// public static void input(){
// BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// try{
// s = br.readLine();
// }catch(IOException e){
// System.out.println("input illegal");
// }
// }
//
// public static int getInt(){
// input();
// return Integer.parseInt(s);
// }
//}
class Judge{ //定义主判断程序的类,同时打印判断结果
void print(int d){
if(d>0){
if((d&(d-1))==0)
System.out.println(d+" is power of 2");
else
System.out.println(d+" is not power of 2");
}else
System.out.println("input illegal");
}
}
public class PrintResult {
public static void main(String[] args){
try{
System.out.println("input a positive int number");
Scanner sc=new Scanner(System.in); //输入整数可以用上边BufferedReader类实现,也可以用scanner类实现
int a=sc.nextInt(); //不过这种方法更简单
sc.close();
Judge ju = new Judge();
// int a = InputData.getInt();
ju.print(a);
}catch(Exception e){
System.out.println("input illegal");
}
}
}