新增了对控制开枪内容的限定,代码如下:
package cn.edu.bdu.rg.revolvergame;
/**
* 骗子酒馆幸运左轮模拟器
*/
import java.util.Random;
import java.util.Scanner;
public class RevolverSimulation {
public static void main(String[] args) {
System.out.println("开运");
System.out.println("请按'1'开始开枪!");
// TODO Auto-generated method stub
int cnt = 0;
Random random = new Random();
Scanner scanner = new Scanner(System.in);
int result, bullet1, bullet2, bullet3, bullet4, bullet5, bullet6;
result = 0;
int[] gun = new int[6];
while (result != 1) {
bullet1 = random.nextInt(2);
bullet2 = random.nextInt(2);
bullet3 = random.nextInt(2);
bullet4 = random.nextInt(2);
bullet5 = random.nextInt(2);
bullet6 = random.nextInt(2);
result = bullet1 + bullet2 + bullet3 + bullet4 + bullet5 + bullet6;
gun[0] = bullet1;
gun[1] = bullet2;
gun[2] = bullet3;
gun[3] = bullet4;
gun[4] = bullet5;
gun[5] = bullet6;
}
for (int i = 0; i <= 6; i++) {
int one = scanner.nextInt();
if (one == 1) {
cnt++;
if (gun[i] == 1) {
System.out.print("嘭,淘汰\n");
switch (cnt) {
case 1:
System.out.println("一次就中弹何其不是另一种幸运呢");
break;
case 2:
System.out.println("两枪中弹");
break;
case 3:
System.out.println("三枪中弹");
break;
case 4:
System.out.println("四枪中弹");
break;
case 5:
System.out.println("五枪中弹");
break;
default:
System.out.println("lucky~~,六次中弹");
}
break;
} else {
System.out.print("恭喜!第" + cnt + "次开枪未中弹\n" + "按1继续开枪:\n");
}
}else {
do {
System.out.println("输入错误,请按0重置本次开枪");
one = scanner.nextInt();
}while (one != 0);
System.out.println("按1开枪:\n");
}
}
}
}
加入了一个if语句的使用来判断朋友你是否是输入的1来开枪,do while的循环1语句可是帮了大忙.
运行结果的展示:
假如你输入的并非是1:
会提示报错,并输入0重置;
后续不会影响总共的开枪次数: