猜数字游戏的两个Java程序代码

别妄想泡我
511次浏览
2021年01月01日 04:01
最佳经验
本文由作者推荐

korol-聪明的狗

2021年1月1日发(作者:单维奎)


猜数字游戏的两个Java程序代码
1、比较简单
import r;
import
public class Cai {
**
* 生成100内的随即数然后 提示用户输入
* 用户输入数据猜
*提示用户 猜大了还是猜 小了
*
public static void main(String[] args) {
while(true){
n(欢迎你试玩猜数字游戏:
n(请按 1开始 2退出
Scanner s = new Scanner();
int ch=0;
ch = t();
if(ch==1){
n(
Scanner ca = new Scanner();
int max =0;
int j=0;
int i=0;
max= (int)(()*100);
do{
n(请您输入数字:
j = t();
if(j n(太小哦
}
if(j>max){
n(太大哦
}
if(j==max){
break;
}
i++;
}while(i<10);
switch(i){
case 1: n(您猜对了,您获得100分
case 2: n(您猜对了,您获得90分
case 3: n(您猜对了,您获得80分
case 4: n(您猜对了,您获得70分


case 5: n(您猜对了,您获得60分
case 6: n(您猜对了,您获得50分
case 7: n(您猜对了,您获得40分
case 8: n(您猜对了,您获得30分
case 9: n(您猜对了,您获得20分
case 10: n(您猜对了,您获得10分
default :n(对不起你没猜对
}
}else if(ch==2) { break;}
}
n(谢谢您的使用
}
}


2、比较复杂的
import
import r;
public class Guess {
public static void main(String[] args) {
产生随机数
int[] guess = MakeGuessNumber();
(系统产生的随机数为:
for(int i=0; i<4; i++){
(guess[i]);
}n();
int[] putIn 定义用户输入
String right = 临时保存比较的结果
String[] history = new String[]{
for(int i=0; i<10; i++){
putIn = PutIn(history); 获取用户输入
right = CompareNumber(guess, putIn); 比较输入结果
history[i] = RemarkHistory(putIn, right); 作历史记录,以便随时查看
if(eTo(
n(恭喜您,猜中了!!!
PrintMenu();
menu(history);
}
}
n(您已经猜了10次,本次游戏结束
PrintMenu();
menu(history);

}


自动产生四个0~9的数字作为随机数,这个四位数相互之间不能相同。
public static int[] MakeGuessNumber(){
Random r = new Random();
int[] guess = new int[4];
for(int i=0; i<4; i++){
guess[i] = t(10);
for(int j=i-1; j>=0; j--){
if(guess[i]==guess[j]){i--;break;}
}
}
return guess;
}
使用者输入猜的四个数字(这四个数字之间也不能相同, 如果有相同的则提示使用者,并让
它重新输入)
public static int[] PutIn(String[] history){
int[] number = new int[4];
int putIn = 0;
Scanner sc = new Scanner();
n(请输入您猜想的4位数字
PrintMenu();
out1: while(true){
如果输入英文、符号、小数等则提示并要求重新输入
try {
putIn = t();
} catch (Exception e) {
String str = ();
if(
if(
if(
n(请输入正整数。
continue;
}
如果输入的不是4位数,提示并要求重新输入
if(putIn>9999 || putIn<100){
n(请输入一个4位数
continue;
}
把输入的一个4位数字变成数组
number[0] = putIn1000;
number[1] = putIn%1000100;
number[2] = putIn%10010;
number[3] = putIn%10;
如果有相同的数字,提示并要求重新输入
for(int i=0; i<4; i++){


for(int j=i-1; j>=0; j--){
if(number[i]==number[j]){
n(请输入4位不相同的数字
continue out1;
}
}
}
输入没错时,退出此死循环,继续其它操作
break;
}
return number;
}
比较输入的与系统产生的,返回结果: xA yB
public static String CompareNumber(int[] guess, int[] putIn){
int rightA = 0; 比较结果有多少个
int rightB = 0; 比较结果有多少个
String right = 以字符串形式保存的比较结果
计算出多少个
for(int i=0; i<4; i++){
if(guess[i]==putIn[i]) rightA++;
}
计算出多少个
for(int i=0; i<4; i++){
for(int j=0; j<4; j++){
if(guess[j]==putIn[i]) rightB++;
}
}
rightB -= rightA;前面的循环会连的也算上,所以需减去
if(rightA != 0) right += rightA +
if(rightB != 0) right += rightB +
if(rightA==0 && rightB==0) right =
n(right);
return right;
}
public static void PrintMenu(){
n(输入重新开始游戏;输入结束游戏;输入查看历史记录

}
public static void menu(String[] history){
Scanner sc = new Scanner();
String str = ();
if(
if(
if(


}

public static String RemarkHistory(int[] putIn, String right){
String str =
for(int i=0; i<4; i++){
str += putIn[i];
}
str +=
return str;
}

public static void PrintHistory(String[] history){
for(int i=0; i<; i++){
if(还没有输入内容
if(
n(history[i]);
}
}
}

日语自学教程-乔山人善琴


免费下载歌曲-英文名句


感恩季-汲取教训


潮州旅游景点大全-圣诞节简介


我自己的英文-大一总结


oppor819t-学前班舞蹈


读后感300字左右-国庆节诗句


丹霞地貌的成因-把最后一颗子弹留给我