成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

猜拳代碼java 猜拳程序代碼

java代碼猜拳游戲相關(guān)代碼請教

comp是電腦產(chǎn)生的隨機(jī)數(shù)字(電腦出的拳),people 是人出的拳。 因?yàn)榧舻妒^布只有 1 2 3

創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括城東網(wǎng)站建設(shè)、城東網(wǎng)站制作、城東網(wǎng)頁制作以及城東網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,城東網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到城東省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

。如果電腦的數(shù)字比的你剛好大1,就是它比你的大。 如21,32對應(yīng)就是(石頭大于剪刀,布大于石頭)。 但也有可能是剪刀大于布 。 那么剪刀的位子是1 ,布的位子是3. 所以當(dāng)電腦數(shù)字減你的數(shù)字等于2時(shí) 就是(電腦出的布 ,你出的石頭這樣的情況了)。

所以是if((comp-people)==-1||(comp-people)==2) 這兩者結(jié)合就是你贏的時(shí)候

Java使用循環(huán),實(shí)現(xiàn)猜拳游戲統(tǒng)計(jì)多少局及勝率?

為了讓游戲有參與感,并體現(xiàn)java面對對象的思想,我先創(chuàng)建一個(gè)Player選手類,包含選手的名字playerName還有出拳方法guess()。出拳時(shí)采用隨機(jī)獲取0、1和2的方式分別代表石頭、剪刀和布,代碼如下:

public class Player {

private String playerName;

public Player(String playerName) {

this.playerName = playerName;

}

public String getPlayerName() {

return playerName;

}

//出拳方法 0-石頭 1-剪刀 2-布

public int guess() {

//隨機(jī)獲取0、1、2

int num = new Random().nextInt(3);

if (num == 0) {

System.out.print("選手" + this.playerName + "出的是石頭 ");

} else if (num == 1) {

System.out.print("選手" + this.playerName + "出的是剪刀 ");

} else if (num == 2) {

System.out.print("選手" + this.playerName + "出的是布 ");

}

return num;

}

}

然后在主類中,首先要輸入對局的總數(shù),然后創(chuàng)建兩名選手進(jìn)行pk,在pk()方法中制定了獲勝規(guī)則,詳見代碼注釋。最終統(tǒng)計(jì)并利用BigDecimal計(jì)算勝率(BigDecimal可以很完美的解決整數(shù)除法及其四舍五入保留小數(shù)的問題):

public class Main {

public static void main(String[] args) {

System.out.println("請輸入本局局?jǐn)?shù):");

Scanner scanner = new Scanner(System.in);

int sum = scanner.nextInt();

//創(chuàng)建結(jié)果數(shù)組,resultArray[0]代表p1的獲勝局?jǐn)?shù),resultArray[1]代表p2的獲勝局?jǐn)?shù),resultArray[2]代表平局局?jǐn)?shù)

int[] resultArray = new int[3];

//創(chuàng)建兩名選手

Player p1 = new Player("張三");

Player p2 = new Player("李四");

for (int i = 0; i sum; i++) {

//根據(jù)總局?jǐn)?shù)進(jìn)行pk

int result = pk(p1, p2);

if (result == 1) {

resultArray[0]++;

} else if (result == -1) {

resultArray[1]++;

} else {

resultArray[2]++;

}

}

System.out.println("");

System.out.println("最終結(jié)果統(tǒng)計(jì):");

System.out.println("選手[" + p1.getPlayerName() + "]獲勝局?jǐn)?shù)為:" + resultArray[0] + ",勝率為:" +

new BigDecimal(resultArray[0]).multiply(new BigDecimal(100).divide(new BigDecimal(sum), 2, BigDecimal.ROUND_HALF_UP)) + "%");

System.out.println("選手[" + p2.getPlayerName() + "]獲勝局?jǐn)?shù)為:" + resultArray[1] + ",勝率為:" +

new BigDecimal(resultArray[1]).multiply(new BigDecimal(100).divide(new BigDecimal(sum), 2, BigDecimal.ROUND_HALF_UP)) + "%");

System.out.println("平局局?jǐn)?shù)為:" + resultArray[2] + ",平局率為:" +

new BigDecimal(resultArray[2]).multiply(new BigDecimal(100).divide(new BigDecimal(sum), 2, BigDecimal.ROUND_HALF_UP)) + "%");

}

//0-石頭 1-剪刀 2-布

//return 0:平局 1:p1獲勝 -1:p2獲勝

private static int pk(Player p1, Player p2) {

System.out.println("--------------------");

int a = p1.guess();

int b = p2.guess();

System.out.print("\n對局結(jié)果:");

//出拳相同平局

if (a == b) {

System.out.println("平局");

return 0;

}

//p1獲勝條件:p1出石頭時(shí)p2出剪刀,p1出剪刀時(shí)p2出步,p1出布時(shí)p2出石頭

else if ((a == 0 b == 1) || (a == 1 b == 2) || (a == 2 b == 0)) {

System.out.println("選手[" + p1.getPlayerName() + "]獲勝");

return 1;

}

//p2獲勝條件:p1出石頭時(shí)p2出布,p1出剪刀時(shí)p2出石頭,p1出布時(shí)p2出剪刀

else if ((a == 0 b == 2) || (a == 1 b == 0) || (a == 2 b == 1)) {

System.out.println("選手[" + p2.getPlayerName() + "]獲勝");

return -1;

} else {

//因?yàn)橐?guī)定了隨機(jī)數(shù)產(chǎn)生0、1、2,所以其實(shí)不會走到本分支

throw new IllegalArgumentException("本局無效");

}

}

}

對局5局的運(yùn)行結(jié)果:

我這里就只能統(tǒng)計(jì)當(dāng)前游戲的數(shù)據(jù)了,如果你想統(tǒng)計(jì)多局游戲總的勝率信息,那么需要將每一局的比賽結(jié)果寫到txt文件里,最終根據(jù)txt文件內(nèi)容統(tǒng)計(jì)即可。

猜拳游戲java能輸出游戲時(shí)間

Java實(shí)現(xiàn)猜拳游戲的核心在于電腦隨機(jī)數(shù)的生成,Java中的隨機(jī)數(shù)生成方法是:

首先引入包? ?import java.util.*;??然后???int r=new Random().nextInt(3);??(nextInt中的數(shù)字三代表隨機(jī)數(shù)生成的個(gè)數(shù),從零開始)

所以在猜拳的輸入中需要有0、1、2三個(gè)數(shù)字代替,如果要輸入漢字,則用if進(jìn)行相應(yīng)判斷即可。

在實(shí)現(xiàn)的游戲中實(shí)現(xiàn)①猜拳;②記錄勝負(fù);③玩家決定游戲局?jǐn)?shù);④輸出獲勝、失敗及平局;⑤統(tǒng)計(jì)總共的勝負(fù)結(jié)果(根據(jù)獲勝次數(shù)判斷)

①猜拳基礎(chǔ)功能:該部分代碼可以放到一個(gè)方法中,減少主函數(shù)代碼量。

電腦出拳即??int r=new Random().nextInt(3);??注意:該部分一定要寫在for循環(huán)內(nèi)部,否則無法實(shí)現(xiàn)每次不同的隨機(jī)數(shù)。

通過if判斷雙方出拳是否相等? ?if(a==0r==0)? else?if(a==0r==1)? else if(a==0r==2)? ?即可實(shí)現(xiàn)猜拳,if內(nèi)直接輸出相關(guān)語句即可

②記錄勝負(fù):? 定義猜拳方法為int ,通過返回值記錄相關(guān)比賽的勝負(fù)情況? ,可以用0--失敗;1--獲勝;2--平局 進(jìn)行記錄,在主函數(shù)中對相應(yīng)拋出的數(shù)字記錄即可

if(a==0r==0){

System.out.println("The computer comes out with cloth,it was a draw. ");

return 2;

}

h=comp.compare(a,r); if (h==1) j++;

登錄后復(fù)制

③玩家決定局?jǐn)?shù): 定義一個(gè)數(shù),在循環(huán)中不大于該數(shù)即可

④輸出獲勝、失敗及平局: j、k即勝利和失敗,平局?jǐn)?shù)即n-j-k。

⑤統(tǒng)計(jì)結(jié)果,直接用if比較i、j的數(shù)字結(jié)果即可。

主函數(shù)部分:

package SS2_5;

import java.util.*;

public class Main {

public static void main(String args[]){

Scanner scanner=new Scanner(System.in);

Compare comp=new Compare();

int h=0,j=0,k=0;

System.out.println("rules:0--cloth;1--stone;2--scissors.\nU can choose how many times you want to play:");

int n=scanner.nextInt();

for(int i=1;i=n;i++){

System.out.print("It's the "+i+" round,your turn:");

int a=scanner.nextInt();

int r=new Random().nextInt(3);

switch (a){

case 0:

h=comp.compare(a,r);

break;

case 1:

h=comp.compare(a,r);

break;

case 2:

h=comp.compare(a,r);

break;

default:

System.out.println("Wrong number!");

break;

}

if (h==1)

j++;

else if(h==0)

k++;

}

System.out.println("The total times you won are "+j+",The draw times are "+(n-j-k)+".");

if(jk)

System.out.println("You are the final winner");

else if(kj)

System.out.println("The computer is the winner.");

if(j==k)

System.out.println("The final result is draw");

}

}

登錄后復(fù)制

compare方法部分

package SS2_5;

public class Compare {

public int compare(int a,int r){

int counter=0;

if(a==0r==0){

System.out.println("The computer comes out with cloth,it was a draw. ");

return 2;

}

else if(a==0r==1){

System.out.println("The computer comes out with stone, you won. ");

return 1;

}

else if(a==0r==2){

System.out.println("The computer comes out with scissor,you lost. ");

return 0;

}

else if(a==1r==0){

System.out.println("The computer comes out with cloth,you lost. ");

return 0;

}

else if(a==1r==1){

System.out.println("The computer comes out with stone,it was a draw. ");

return 2;

}

else if(a==1r==2){

System.out.println("The computer comes out with scissors,you won. ");

return 1;

}

else if(a==2r==0){

System.out.println("The computer comes out with cloth,you won. ");

return 1;

}

else if(a==2r==1){

System.out.println("The computer comes out with stone,you lost. ");

return 0;

}

else if(a==2r==2){

System.out.println("The computer comes out with scissors,it was a draw. ");

return 2;

}

else

return 0;

}

}

登錄后復(fù)制

java

704拖拉機(jī)

精選推薦

廣告

java寫簡單的猜拳游戲

2下載·0評論

2016年7月27日

用Java編寫的猜拳小游戲

2029閱讀·0評論·0點(diǎn)贊

2021年3月7日

Java猜拳游戲和Random的應(yīng)用

21閱讀·0評論·0點(diǎn)贊

2022年10月24日

java實(shí)現(xiàn)完整版猜拳小游戲

25下載·0評論

2018年11月22日

用python實(shí)現(xiàn)功能猜拳

1137閱讀·2評論·3點(diǎn)贊

2022年7月14日

java猜拳switch計(jì)分制_java----猜拳(10局分勝負(fù))

117閱讀·0評論·1點(diǎn)贊

2021年3月15日

二手拖拉機(jī)交易市場,你還在高價(jià)買嗎?

精選推薦

廣告

利用Java編寫簡單的猜拳游戲

911閱讀·0評論·1點(diǎn)贊

2022年9月8日

Java簡單實(shí)現(xiàn)猜拳游戲

1.1W閱讀·1評論·2點(diǎn)贊

2022年1月23日

java猜拳游戲代碼_Java實(shí)現(xiàn)簡單猜拳游戲

4496閱讀·0評論·0點(diǎn)贊

2021年3月1日

用java來寫一個(gè)簡單的猜拳小游戲

890閱讀·1評論·1點(diǎn)贊

2022年7月26日

java實(shí)現(xiàn)猜拳游戲

3180閱讀·2評論·1點(diǎn)贊

2022年5月4日

JAVA編寫猜拳游戲

3037閱讀·3評論·3點(diǎn)贊

2021年3月16日

[Java教程]17.實(shí)戰(zhàn),趣味猜拳小游戲

8040閱讀·2評論·3點(diǎn)贊

2020年6月24日

怎么用java實(shí)現(xiàn)人機(jī)猜拳?

1959閱讀·6評論·9點(diǎn)贊

2021年7月22日

Java Random經(jīng)典例子【猜拳游戲】

4318閱讀·0評論·0點(diǎn)贊

2014年3月22日

java的人機(jī)猜拳代碼_Java實(shí)現(xiàn)人機(jī)猜拳游戲

702閱讀·0評論·2點(diǎn)贊

2021年3月12日

Java基礎(chǔ)練習(xí)之猜拳游戲

363閱讀·1評論·1點(diǎn)贊

2021年8月19日

用java寫猜拳小游戲

1096閱讀·0評論·1點(diǎn)贊

2021年9月1日

Java猜拳小游戲

97閱讀·0評論·0點(diǎn)贊

2022年8月23日

java猜拳小游戲

500閱讀·1評論·0點(diǎn)贊

2022年7月14日

名稱欄目:猜拳代碼java 猜拳程序代碼
當(dāng)前網(wǎng)址:http://jinyejixie.com/article30/dosdcso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、定制網(wǎng)站、商城網(wǎng)站、關(guān)鍵詞優(yōu)化、網(wǎng)站改版建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
绥化市| 即墨市| 米泉市| 万山特区| 虎林市| 陆良县| 瓮安县| 阜新| 股票| 巴楚县| 维西| 滨海县| 泸州市| 谷城县| 德昌县| 云安县| 临清市| 凉城县| 股票| 宜昌市| 扬中市| 兴安县| 南通市| 桑日县| 磐安县| 城固县| 磴口县| 咸宁市| 饶平县| 措美县| 泽普县| 台北市| 抚松县| 瓦房店市| 宜州市| 交城县| 敖汉旗| 永济市| 布尔津县| 耿马| 东莞市|