zoukankan      html  css  js  c++  java
  • 从键盘输入数,输出它们的平方值&判断是不是2的阶次方数

    1.从键盘输入两个整数,然后输出它们的平方值和立方值

    在Java中,没有像C语言那样有一个专供接受键盘输入值的scanf函数,所以一般的做法是从键盘输入一行字符,保存到字符串s中,再将字符组成的字符串s转换为整型数据后返回

    package mianshiti;
    import java.io.*;
    public class PrintResult {
    
    	public static void main(String[] args) {
    		Result result=new Result();
    		System.out.println("请输入一个整数:");
    		int a=InputData.getInt();
    		result.print(a);
    	}
    }
    
    class InputData{//定义从键盘输入数据的类
    	static private String s="";
    	static public void input(){//从键盘输入一行字符,保存到字符串s中
    		BufferedReader bu=new BufferedReader(new InputStreamReader(System.in));
    		try{
    			s=bu.readLine();//读取一行,只返回回车符之前的数据内容
    		}
    		catch(Exception e){}
    		
    	}
    	
    	static public int getInt(){//静态方法可直接用类名调用
    		input();
    		return Integer.parseInt(s);//将字符组成的字符串s转换为整型数据后返回
    	}
    }
    
    class Result{
    	void print(int d){
    		System.out.println(d+"的平方:"+d*d);
    		System.out.println(d+"的立方:"+d*d*d);
    	}
    }
    

      2.  8,64,256都是2的阶次方数,判断一个整数是不是2的阶次方数。

        如果一个数是2的阶次方数,那么它的二进制数的首位一般是1,后面若干个0,。比如8就是1000,64就是1000000。如果将这个数减1后,再与该数做和(&)运算,则应该全为0(如,8与7,8的二进制数1000,7的二进制数111,它们做和运算即8&7==0的,所以推出,((d-1)&(d))==0

    package mianshiti;
    import java.io.*;
    public class PrintResult1 {
    
    	public static void main(String[] args) {
    		Result1 result=new Result1();
    		System.out.println("请输入一个整数:");
    		int a=InputData1.getInt();
    		result.print(a);
    	}
    }
    
    class InputData1{//定义从键盘输入数据的类
    	static private String s="";
    	static public void input(){//从键盘输入一行字符,保存到字符串s中
    		BufferedReader bu=new BufferedReader(new InputStreamReader(System.in));
    		try{
    			s=bu.readLine();//读取一行,只返回回车符之前的数据内容
    		}
    		catch(Exception e){}
    		
    	}
    	
    	static public int getInt(){//静态方法可直接用类名调用
    		input();
    		return Integer.parseInt(s);//将字符组成的字符串s转换为整型数据后返回
    	}
    }
    
    class Result1{
    	void print(int d){
    		if(((d-1)&d)==0&&(d!=0))
    		System.out.println("是2的阶次");
    		else
    		System.out.println("不是2的阶次");
    	}
    }
    

      

  • 相关阅读:
    完整的 mime type 列表
    安装chrome扩展json-handle
    在没有go-pear.bat的php中安装pear
    windows下安装PhpDocumentor(phpdoc)笔记
    【MySQL】批量数据循环插入
    thinkPHP 3.2.3操作MongoDB指南
    给深度学习入门者的Python快速教程
    为什么人工智能用Python
    计算机英语(一)
    Java 基础生词表
  • 原文地址:https://www.cnblogs.com/GumpYan/p/5735505.html
Copyright © 2011-2022 走看看