猜数字游戏

一个产生交互的猜数字游戏,很普通的,输入一个数n,计算机将产生0-n中的一个数,然后通过猜测和计算机的提示,知道猜测成功后游戏结束。

     这个游戏已经被改版了很多····

     写这个只是为了解决腾讯的2012校园实习生招聘的一个面试题。

    源代码:

 

 
 
  1. import java.util.Scanner;  
  2. import java.util.Random;  
  3. import java.util.InputMismatchException;  
  4.  
  5. /**  
  6.  * @author Administrator  
  7.  *   
  8.  */ 
  9.  
  10. public class GuessNumber {  
  11.       
  12.     private Scanner console = new Scanner(System.in);  
  13.     private int number;  
  14.       
  15.     //设置随机产生的数字计算机随机产生一个要猜测的数字,参数表示随机产生的最大的猜测数  
  16.     public void setNumber(int level) {  
  17.         Random random = new Random();  
  18.         this.number = random.nextInt(level+1);  
  19.     }  
  20.       
  21.     //用户输入猜测的数字  
  22.     public int inputJudgeNumber() {  
  23.         int guess;  
  24.         System.out.print("Plese input a Integer number :");  
  25.         try {  
  26.             guess = console.nextInt();  
  27.         } catch (InputMismatchException e) {  
  28.             throw new InputMismatchException("This is a junck number !");  
  29.         }  
  30.         return guess;  
  31.     }  
  32.       
  33.     //进行游戏的有效操作  
  34.     public void playGame(){  
  35.         int i=0;  
  36.         int guess=inputJudgeNumber();  
  37.         while(true){  
  38.             i++;  
  39.             if(this.number>guess){  
  40.                 System.out.println("The guess number is too small !");    
  41.             }  
  42.             else if(this.number<guess){  
  43.                 System.out.println("The guess number is too big !");  
  44.             }  
  45.             else{  
  46.                 System.out.println("All right , your are ok tatal : "+i+"s");  
  47.                 break;  
  48.             }  
  49.             guess=inputJudgeNumber();     
  50.         }  
  51.     }  

做一个主方法来测试0-100之间最少多少次就可以猜中计算机随机生成的数。

 

 
 
  1. public static void main(String[] args) {  
  2.         System.out.println("We start guess number game now !");  
  3.         Scanner scan=new Scanner(System.in);  
  4.         System.out.print("Please input you want play level :");  
  5.         int level=scan.nextInt();  
  6.         GuessNumber gn=new GuessNumber();  
  7.         gn.setNumber(level);  
  8.         System.out.println("The Random number by guess creat over!");  
  9.         gn.playGame();  
  10.     } 

 


本文转自 secondriver 51CTO博客,原文链接:http://blog.51cto.com/aiilive/851617,如需转载请自行联系原作者

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值