为什么随机值都一样

为什么随机值都一样



int number=(int)Math.random()*10+1;

      int guess;

      do {

     System.out.println("猜一个介于1到10之间的数");

     @SuppressWarnings("resource")

Scanner sc=new Scanner(System.in);

     guess=sc.nextInt();

     if(guess>number) {

     System.out.println("哦呦,太大了!");

     }else if(guess<number) {

     System.out.println("哎,太小咯!");

     }

     

      }while(guess!=number);

      System.out.println("恭喜你,猜对了!");


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

math.random()函数是取从0至1之间的随机数,你强制类型转换成int整数,都是0, 0*10+1=1。

  • 改成int number=(int) (Math.random()*10+1);就好了
    2018-02-27 22:16:31
  • 慕少5814628 提问者 #2
    非常感谢!
    2018-03-02 11:42:34
badeershi 2018-03-02 10:31:41

少一个括号。

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师