“猜数字” 游戏 — Java (功能完善中…)

1 import java.util.NoSuchElementException; 2 import java.util.Random; 3 import java.util.Scanner; * Created with IntelliJ IDEA. 7 * User: lx_sunwei 8 * Date: 13-11-28 9 * Time: 下午8:02 10 * To change this template use File | Settings | File Templates. GassGame { main(String[] args){ 14 15Scanner scanner1 = new Scanner(System.in); 16System.out.println(“欢迎来到“功能稳定、无异常、超好玩的”猜数字游戏”+”\n”+” 规则如下:请输入一个指定等级内的整数,若和系统产生的随机数相同则正确,每局总共有五次输入机会。”);y=0 ;* “选择循环,直到输入正确的数字”{ 23try { 24System.out.println(“请选择: 1:进入游戏 2:退出 3:帮助”);(y){ 27case 1: 28System.out.println(“请选择等级: 1:简单 2:中等 3:高级”); 29int rank = 0;* “等级循环,直到输入正确的等级” { 34try {(rank){ 37case 1: gass(101); stop(); 38case 2: gass(301); stop(); 39case 3: gass(501); stop(); 40default: System.out.println(“输入数据有误。\n请选择等级: 1:简单 2:中等 3:高级”); 41 } 42}catch (NoSuchElementException | NumberFormatException ex){ 43System.out.println(“输入数据有误。\n请选择等级: 1:简单 2:中等 3:高级”); 44 }2: 3: System.out.println(“欢迎进入帮助页面:\n 1.在键盘上输入一个数,例如 50,此数会和系统产生的一个随机数进行比较,会提示您输入的数字是大是小。每局您都有五次输入的机会,输入错误数据类型不计入总次数。\n 2.每局结束都会提示您是否进行下一局,输入Y则继续、输入N则退出游戏\n 3.祝您玩的愉快。\n”+”请选择: 1:返回 2:退出”); 48y = onet(scanner1);break; 49default : System.out.println(“输入数据错误,请从新输入!”); 50 } 51}catch (NoSuchElementException | NumberFormatException ex){ 52System.out.println(“输入数据错误,请重新输入!”); 53 }System.out.println(“亲,欢迎下次再来”); 56 }* “停止程序” String stop(){ 61System.exit(0); 62return ” “; 63 }* “游戏等级的逻辑主代码,,确定游戏等级,记录输入次数,胜局数等”gass(int limit) { 68int n,m,i,j=0,x=0; 69String str=” “; 70do { 71Random random = new Random();breakfor :{ 74for(i=1;i<=5;i++) 75try { 76System.out.println(“请输入一个数1~”+(limit-1)+”内的整数(包含1和”+(limit-1)+”):”); 77Scanner scanner = new Scanner(System.in);d = 5 – i; 80if (m > limit-1 || m <= 0) { 81System.out.println(“您输入的数据有误,请重新输入!”);} else if (m == n) { 84System.out.println(“输入正确!是否进入下一局:Y/N”);n = Math.abs(random.nextInt())%limit; 85i = 0;j++; str = opinion(scanner); (str.equalsIgnoreCase(“N”)){ 90break breakfor; 91 } 92} else if (m > n) { 93if (d == 0) { 94System.out.println(“您输入的数大了,随机数为 “+n+”。是否继续:Y/N”);n = Math.abs(random.nextInt())%limit; 95i = 0;str = opinion(scanner); (str.equalsIgnoreCase(“N”)){ 99break breakfor;100 }101} else {102System.out.println(“您输入的数大了,还有” + d + “次机会,请重新输入!”);103 }104} else {105if (d == 0) {106System.out.println(“您输入的数小了,随机数为 “+n+”。是否继续:Y/N”);n = Math.abs(random.nextInt())%limit;107i = 0;str = opinion(scanner);(str.equalsIgnoreCase(“N”)){111break breakfor;112 }113} else {114System.out.println(“您输入的数小了,还有” + d + “次机会,请重新输入!”);115 }116 }117} catch (NoSuchElementException ex){118System.out.println(“输入数据有误,请从新输入!”);}121 }System.out.println(“游戏结束,您一共玩了”+j+”局,胜”+x+”局。亲,欢迎下次再来!”);124 }* “判断输入是否为 Y/N” String opinion(Scanner scanner) {129 String str;130str = scanner.next();131if(str.toUpperCase().hashCode()!=”N”.hashCode()){132while(!str.equalsIgnoreCase(“Y”)){133System.out.println(“您输入的数据有误,请从新输入!\n是否继续:Y/N”);134str = scanner.next();135if (str.equalsIgnoreCase(“N”)){136return “N”;137 }138 }139 }140return str;141 }* “1 返回 或 任意键退出” onet(Scanner scanner1){146int y = 0;147do {148try {149y = Integer.parseInt(scanner1.next());150if (y != 2 ){151while (y != 1){152System.out.println(“输入数据有误,请重新输入!\n请选择: 1:返回 2:退出”);153y = Integer.parseInt(scanner1.next());154if (y == 2 ){155return 2;156 }157 }158 }159}catch (NoSuchElementException | NumberFormatException ex){160System.out.println(“输入数据有误,请重新输入!\n请选择: 1:返回 2:退出”);161 }162}while (y != 1 && y != 2);163return y;164 }165 }用最多的梦面对未来

“猜数字” 游戏 — Java (功能完善中…)

相关文章:

你感兴趣的文章:

标签云: