Java入门——day36

一、今日学习

1.猜数游戏

(1)让计算机来想一个数,然后让用户来猜,用户每输入一个数,就告诉它是大了还是小了,直到用户猜中为止,最后告诉用户猜了多少次

 1 import java.util.Scanner;
 2 public class Study {
 3     public static void main(String[] args) {
 4         Scanner in=new Scanner(System.in);
 5         int number=(int)(Math.random()*100+1);
 6         int count=0;
 7         int a;
 8         System.out.println("我已经想好了一个1~100之间的数");
 9         do {
10             System.out.print("请输入你的猜想:");
11             a=in.nextInt();
12             count++;
13             if(a>number) {
14                 System.out.println("你猜的数大了");
15             }
16             else if(a<number) {
17                 System.out.println("你猜的数小了");
18             }
19         }while(a!=number);
20         System.out.println("恭喜你猜中了数字"+number+"!你猜了"+count+"次");
21     }
22 }

       

(2)随机数:每次召唤Math.random()可以得到一个[0,1)范围的随机数。  注意:产生的是double型的数字

由此也可以进行改变,例如:产生[0,10)之间的随机数——Math.random()*10,产生[1,100]之间的随机数——(Math.random()*100)+1


2.逆序输出

(1)整数分解

一个整数是由1至多位数字组成的,如何分解出整数的各个位上的数字:   对一个整数做%10的操作数,就得到了它的个位数;对一个整数做/10的操作,就去掉了它的个位数;然后再对结果做%10,就得到原来数的十位数,以此类推。

(2)输入一个正整数,输出逆序的数

 1 import java.util.Scanner;
 2 public class Study {
 3     public static void main(String[] args) {
 4         Scanner in=new Scanner(System.in);
 5         System.out.print("请输入一个正整数:");
 6         int number=in.nextInt();
 7         int result=0;
 8         do {
 9             int digit=number%10;
10             result=result*10+digit;
11             number=number/10;
12         }while(number>0);
13         System.out.println("逆序结果为:"+result);
14     }
15 }

                         

二、遇到问题

再写产生随机数int number=Math.random()时遇到了错误:Type mismatch: cannot convert from double to int,这是因为Math.random()产生的double值的数字,如果赋值给不是double类型的变量,将会出现这个问题。所以我们可以进行类型转换,表示为:int number=(int)Math.random()

三、明日学习

继续复习

原文地址:https://www.cnblogs.com/znjy/p/13472256.html