public?class?caiziyouxi?{
public?static?void?main(String[]?args)?throws?InterruptedException?{
int?n?=?0;
????int?m?=?0;
????int?c?=?0;
int?x?=?(int)(Math.random()*25);
int?y?=?(int)(Math.random()*25);?/*定義要猜的數(shù)字的范圍*/
????????if?(x?>?y)?{System.out.println("要猜的數(shù)字在???"+y+"~"+x+"?之間");
?????????????????????n?=?y+(int)(Math.random()*x);
?????????????????????m?=?y+(int)(Math.random()*x);
?????????????????????c?=?y+(int)(Math.random()*x);}
????????else?if?(y?>?x)?{System.out.println("要猜的數(shù)字在???"+x+"~"+y+"?之間");
?????????????????????????n?=?x+(int)(Math.random()*y);
?????????????????????????m?=?x+(int)(Math.random()*y);
?????????????????????????c?=?x+(int)(Math.random()*y);}
????????else?{x?=?(int)(Math.random()*100);
????????if?(x?>?y)?{System.out.println("要猜的數(shù)字在???"+y+"~"+x+"?之間");
????????????????????n?=?y+(int)(Math.random()*x);
????????????????????m?=?y+(int)(Math.random()*x);
????????????????????c?=?y+(int)(Math.random()*x);}
????????if?(y?>?x)?{System.out.println("要猜的數(shù)字在???"+x+"~"+y+"?之間");
????????????????????n?=?x+(int)(Math.random()*y);
????????????????????m?=?x+(int)(Math.random()*y);
????????????????????c?=?x+(int)(Math.random()*y);}
????????}?????????????/*輸出要猜的數(shù)字的范圍及定義要猜的數(shù)字*/Thread.sleep(2000);
????????System.out.println("現(xiàn)在開始選定玩家");???
????????int?z?=?(int)(Math.random()*4);/*確定玩家數(shù)量為5*/
????????String?A?=?new?String();
????????if?(z?==?0)?{A?=?"Mary";}
????????else?if?(z?==?1)?{A?=?"Tom";}
????????else?if?(z?==?2)?{A?=?"Steve";}
????????else?if?(z?==?3)?{A?=?"Barry";}
????????else?{A?=?"Tony";}
????????Thread.sleep(5000);/*程序延遲5S*/
????????System.out.println("第一位玩家是:"+A);/*創(chuàng)建玩家A*/
????????if?(z?<?4)?{z?=?z?+?1;}
????????else?{z?=?z?-?1;}
????????String?B?=?new?String();
????????if?(z?==?0)?{B?=?"Mary";}
????????else?if?(z?==?1)?{B?=?"Tom";}
????????else?if?(z?==?2)?{B?=?"Steve";}
????????else?if?(z?==?3)?{B?=?"Barry";}
????????else?{B?=?"Tony";}
????????Thread.sleep(3000);/*程序延遲3S*/
????????System.out.println("第二位玩家是:"+B);/*創(chuàng)建玩家B*/Thread.sleep(1000);
????????System.out.println("玩家開始猜數(shù)......");
????????Thread.sleep(10000);/*程序延遲10S*/
????????if?(m?==?n)?{System.out.println("恭喜選手"+A+"猜對(duì)了?。?!");}
????????else?if?(c?==?n)?{System.out.println("恭喜選手"+B+"猜對(duì)了!?。?);}
????????else?{System.out.println("很可惜兩位玩家都猜錯(cuò)了,請(qǐng)重新開始猜數(shù)。");
??????????????while?(m?>?n|m?<?n|c?>?n|c?<?n){
???????????? ??m++;c--;
???????????? ??System.out.println("玩家開始猜數(shù)......");
??????????????????Thread.sleep(5000);/*程序延遲5S*/
??????????????????if?(m?==?n)?{System.out.println("恭喜選手"+A+"猜對(duì)了?。?!");}
??????????????????else?if?(c?==?n)?{System.out.println("恭喜選手"+B+"猜對(duì)了?。。?);}
??????????????????else?{System.out.println("很可惜兩位玩家都猜錯(cuò)了,請(qǐng)重新開始猜數(shù)。");}
??????????????????}
??????????????}
????????
????????}
}
為啥每次運(yùn)行n和x、y的數(shù)都對(duì)不上???
1 回答
已采納

__innocence
TA貢獻(xiàn)313條經(jīng)驗(yàn) 獲得超208個(gè)贊
沒看你的邏輯,但是我覺得是這里錯(cuò)了:
while?(m?>?n|m?<?n|c?>?n|c?<?n)
如果表示或,應(yīng)該是
while?(m?>?n?||?m?<?n?||?c?>?n?||?c?<?n)
一個(gè)豎線表示位運(yùn)算,兩個(gè)豎線表示或
添加回答
舉報(bào)
0/150
提交
取消