概述
/**
* 猜数字游戏
* endNum:结束数字
* times:可以猜的次数,超过次数为失败
*/
public static void GuessGame(Integer endNum,Integer times){
String endNumStr=String.valueOf(endNum);
String randomNumStr ="";
//循环判断有几个0用于规定随机数的范围
for (int n=0;n<endNumStr.length();n++){
if (endNumStr.charAt(n)=='0'){
randomNumStr = randomNumStr +"9";
}
}
Integer randomNum=Integer.valueOf(randomNumStr);
Integer guessingNumber=(int) (Math.random()*randomNum+1);
//循环开始计数
Integer i=0;
//开始数字
Integer start=1;
//结束数字
Integer end=endNum;
//是否符合数字范围
Integer numArround =0;
System.out.println("请在"+start+"到"+end+"输入一个数字");
//循环输入数字
for (;i<times;i++) {
int num = new Scanner(System.in).nextInt();
//如果输入的数字不在区间内
if (num < start || num > end) {
numArround = 1;
System.out.println("您不遵守游戏规则,游戏结束");
return;
}
//最后一次猜完后不在提示范围
if (i != times - 1){
//如果猜的数字大于正确的数字
if (num > guessingNumber) {
//判断哪个数字大用于给出提示
if (start < num) {
System.out.println("请在" + start + "到" + num + "输入一个数字");
} else {
System.out.println("请在" + num + "到" + start + "输入一个数字");
}
//如果数字小于正确的数字,前区间前移
if (num > start && num < guessingNumber) {
start = num;
}
// //如果数字小于正确的数字,后区间前移
if (num < end && num > guessingNumber) {
end = num;
}
//如果猜的数字小于正确的数字
} else if (num < guessingNumber) {
if (end > num) {
System.out.println("请在" + num + "到" + end + "输入一个数字");
} else {
System.out.println("请在" + end + "到" + num + "输入一个数字");
}
if (num < end && num > guessingNumber) {
end = num;
}
if (num > start && num < guessingNumber) {
start = num;
}
}
}
//恰好到次数后
if (num != guessingNumber && i == times) {
System.out.println(i + "次已过,您失败了,正确答案是: " + guessingNumber);
} else if(num==guessingNumber){
System.out.println("猜对了,正确答案是: " + guessingNumber + ",您一共猜了" + i + "次");
break;
}
}
//过了次数后
if (i > times-1) {
System.out.println(i+"次已过,您失败了,正确答案是: " + guessingNumber);
}
}
最后
以上就是天真小蝴蝶为你收集整理的用java基础中的循环做一个简单的猜数字小游戏的全部内容,希望文章能够帮你解决用java基础中的循环做一个简单的猜数字小游戏所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复