Math类的随机数功能

在这里插入图片描述

      Math:类包含用于执行基本数学运算的方法。
      由于Math类在java.lang包下,所以不需要导包。
      特点:
      	  没有构造方法,因为它的成员全部是静态的。
       //1.Math.random生成0.0并且小于1.0的伪随机数(0.0~0.999999)
		for(int i=1;i<=10;i++){
			double r = Math.random();
			System.out.println(r);
		}
		
		//2.生成0~99的随机数
		for(int i=1;i<=10;i++){
			double r = Math.random() * 100;
			int num = (int)r;
			System.out.println(num);
		}
		//3.我要获取一个1-100之间的随机数,肿么办?
		for(int x=0; x<100; x++) {
			int number = (int)(Math.random()*100)+1;//包括100和1
			System.out.println(number);
		}


    /*
    	猜数字小游戏(数据在1-100之间)
    	
    	分析:
    		A:程序产生一个随机数。(被猜的)
    		B:键盘录入数据。(你猜的)
    		C:把你猜的和被猜的进行比较
    			a:大了
    			b:小了
    			c:猜中了
    		D:给出多次猜的机会,猜中就结束。
    			while()循环,猜中就break
    */
    import java.util.Scanner;
    
    class GuessNumber {
    	public static void main(String[] args) {
    		//程序产生一个随机数。(被猜的)
    		int number = (int)(Math.random()*100)+1;
    		//System.out.println(number);
    		
    		//给出多次猜的机会,猜中就结束。
    		while(true) {
    			//键盘录入数据。(你猜的)
    			Scanner sc = new Scanner(System.in);
    			System.out.println("请输入你要猜的数据(1-100):");
    			int guessNumber = sc.nextInt();
    			
    			//把你猜的和被猜的进行比较
    			if(guessNumber > number) {
    				System.out.println("你猜的数据"+guessNumber+"大了");
    			}else if(guessNumber < number) {
    				System.out.println("你猜的数据"+guessNumber+"小了");
    			}else {
    				System.out.println("恭喜你,猜中了");
    				break;
    			}
    		}
    	}
    }



public class Test01 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//猜数字小游戏案例
	/*	需求:猜数字小游戏(数据在1-99之间)
		写两种情况的案例
		一是只给三次机会就结束游戏
		给n次机会,直到猜对才结束游戏*/
		
		//1.生成随机数[数据在1-99之间]
		int num = 0;
		while(true){//这种写法是避免0的出现
			num = (int)(Math.random() * 100);//0-99
			if(num != 0) break;
		}
		System.out.println("生成的随机数是:" + num);
		
		//2.接收用户输入的数字
		Scanner scanner = new Scanner(System.in);
		System.out.println("你有3次机会来猜数字");
		for(int i=0;i<3;i++){
			System.out.println("请输入1~99的数:[这是你第" + (i + 1) + "次机会]");
			int a = scanner.nextInt();
			
			if(a > num){
				System.out.println("你猜的数有点大");
			}else if(a < num){
				System.out.println("你猜的数有点小");
			}else{
				System.out.println("binggo,你猜对了,接受惩罚...");
				break;//猜对了之后,要退出for循环
			}
		}
		
	}

}

猜你喜欢

转载自blog.csdn.net/lixue_yang/article/details/88828512