Java實(shí)戰(zhàn)入門(mén)之雙色球彩票小游戲
一、項(xiàng)目需求
二、項(xiàng)目思路
1、菜單制作
2、中獎(jiǎng)號(hào)碼生成 getNumber (隨機(jī)數(shù) Math.random)
3、購(gòu)買(mǎi)號(hào)碼和中獎(jiǎng)號(hào)碼比對(duì) 生成中獎(jiǎng)等級(jí)
三、完整代碼
package com.test.mxl; import java.util.Scanner; public class Test { public static void main(String[] args) { int[] balls = new int[7]; int count = 0; boolean isBuy = false;//默認(rèn)情況下沒(méi)有買(mǎi)彩票 while (true){ System.out.println("------------歡迎進(jìn)入雙色球彩票系統(tǒng)----------------"); System.out.println("1、購(gòu)買(mǎi)彩票"); System.out.println("2、查看開(kāi)獎(jiǎng)"); System.out.println("3、退出"); System.out.println("請(qǐng)選擇你要完成的功能"); Scanner sc = new Scanner(System.in); int choice = sc.nextInt(); switch (choice){ case 1: System.out.println("雙色球系統(tǒng)》》購(gòu)買(mǎi)彩票"); System.out.println("請(qǐng)選擇你要購(gòu)買(mǎi)幾注:"); count = sc.nextInt(); //定義一個(gè)變量 如果每購(gòu)買(mǎi)提示不能直接開(kāi)獎(jiǎng) for (int i = 1; i <= 7; i++) { if(i != 7){//錄入紅色 System.out.println("請(qǐng)錄入第"+i+"個(gè)紅球"); balls[i-1] = sc.nextInt(); }else { //錄入藍(lán)色 System.out.println("請(qǐng)錄入一個(gè)藍(lán)色球"); balls[i-1] = sc.nextInt(); } } System.out.println("您購(gòu)買(mǎi)了"+count+"注彩票,一共消費(fèi)了"+count*2+"元錢(qián),您購(gòu)買(mǎi)的彩票號(hào)碼為: "); //遍歷數(shù)組 for (int num: balls) { System.out.print(num+"\t"); } System.out.println(); isBuy = true; break; case 2: if (isBuy){ System.out.println("雙色球系統(tǒng)》》查看開(kāi)獎(jiǎng)"); //1 生成 int[] luckBalls= getNumber(); //2 對(duì)比 int level = getlevel(balls,luckBalls); //3 顯示結(jié)果 System.out.println("本期中獎(jiǎng)號(hào)碼為:"+luckBalls[0]+" "+luckBalls[1]+" "+luckBalls[2]+" "+luckBalls[3]+" "+luckBalls[4]+" "+luckBalls[5]+" "+luckBalls[6]); switch (level){ case 1: System.out.println("恭喜您,中了一等獎(jiǎng),1注獎(jiǎng)金500萬(wàn),您一共獲得: "+500*count+"萬(wàn)元"); break; case 2: System.out.println("恭喜您,中了二等獎(jiǎng),1注獎(jiǎng)金100萬(wàn),您一共獲得: "+100*count+"萬(wàn)元"); break; case 3: System.out.println("恭喜您,中了三等獎(jiǎng),1注獎(jiǎng)金30萬(wàn),您一共獲得: "+30*count+"萬(wàn)元"); break; case 4: System.out.println("恭喜您,中了四等獎(jiǎng),1注獎(jiǎng)金5萬(wàn),您一共獲得: "+5*count+"萬(wàn)元"); break; case 5: System.out.println("恭喜您,中了五等獎(jiǎng),1注獎(jiǎng)金2000千元,您一共獲得: "+2000*count+"元"); break; case 6: System.out.println("恭喜您,中了六等獎(jiǎng),1注獎(jiǎng)金5元,您一共獲得: "+5*count+"元"); break; } }else { System.out.println("對(duì)不起,請(qǐng)先購(gòu)買(mǎi)彩票"); } break; case 3: System.out.println("雙色球系統(tǒng)》》退出"); return; } } } public static int[] getNumber(){ int[] getNumber = new int[7]; //隨機(jī)數(shù)生成:紅球 1-33,籃球1-16, Math.random() --[0.0,1.0) 可乘數(shù); for (int i = 1; i <= 7; i++) { if(i != 7){ getNumber[i-1] = (int)(Math.random()*33 + 1); }else { getNumber[i-1] = (int)(Math.random()*16 + 1); } } return getNumber; } //比對(duì)是否中獎(jiǎng),中幾等獎(jiǎng) public static int getlevel(int[] balls,int[] luckBalls){ //設(shè)置兩個(gè)計(jì)數(shù) 紅球和籃球 每相同一個(gè)就加一次。 int level = 0; int redCount = 0; int blueCount = 0; //遍歷購(gòu)買(mǎi)的號(hào)碼 for (int i = 0; i < 7; i++) { if (i != 6){ for (int j = 0; j < 6; j++) { if (balls[i] == luckBalls[j]){ redCount++; } } }else { //籃球中獎(jiǎng) if(balls[6] == luckBalls[6]){ blueCount++; } } } //輸出比對(duì)結(jié)果 //根據(jù)紅藍(lán)球相等數(shù)量得到level結(jié)果 if(redCount == 6 && blueCount == 1){ level = 1; } else if(redCount == 6 ){ level = 2; } else if(redCount == 5 && blueCount == 1){ level = 3; } else if(redCount == 5 || (redCount == 4 && blueCount==1)){ level = 4; } else if (redCount == 4 || (redCount == 3 && blueCount==1)){ level = 5; }else { level = 6; } return level; } }
四、功能演示
到此這篇關(guān)于Java實(shí)戰(zhàn)入門(mén)之雙色球彩票的文章就介紹到這了,更多相關(guān)java雙色球彩票內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 教你怎么用Java開(kāi)發(fā)掃雷游戲
- 用Java實(shí)現(xiàn)24點(diǎn)游戲
- Java Swing實(shí)現(xiàn)坦克大戰(zhàn)游戲
- Java實(shí)戰(zhàn)之飛翔的小鳥(niǎo)小游戲
- Java實(shí)現(xiàn)五子棋游戲
- JAVA實(shí)現(xiàn)的CrazyArcade泡泡堂游戲
- java實(shí)戰(zhàn)之飛機(jī)大戰(zhàn)小游戲(源碼加注釋)
- java實(shí)戰(zhàn)之猜字小游戲
- 基于Java實(shí)現(xiàn)簡(jiǎn)單貪吃蛇游戲
- 利用java開(kāi)發(fā)簡(jiǎn)易版掃雷游戲
- Java實(shí)現(xiàn)簡(jiǎn)易撲克牌游戲的完整實(shí)例
- java簡(jiǎn)易小游戲制作代碼
- 我用java實(shí)現(xiàn)了王者榮耀的皮膚和英雄技能
相關(guān)文章
Spring整合quartz做定時(shí)任務(wù)的示例代碼
這篇文章主要介紹了在spring項(xiàng)目使用quartz做定時(shí)任務(wù),首先我這里的項(xiàng)目已經(jīng)是一個(gè)可以跑起來(lái)的完整項(xiàng)目,web.xml里面的配置我就不貼出來(lái)了,具體實(shí)例代碼跟隨小編一起看看吧2022-01-01一次mybatis連接查詢(xún)遇到的坑實(shí)戰(zhàn)記錄
這篇文章主要給大家介紹了關(guān)于一次mybatis連接查詢(xún)遇到的坑的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Android讀取本地或網(wǎng)絡(luò)圖片并轉(zhuǎn)換為Bitmap
這篇文章主要為大家詳細(xì)介紹了Android讀取本地或網(wǎng)絡(luò)圖片,并轉(zhuǎn)換為Bitmap,感興趣的小伙伴們可以參考一下2016-08-08SpringBoot實(shí)現(xiàn)application.yml文件敏感信息加密
本文主要介紹了SpringBoot實(shí)現(xiàn)application.yml文件敏感信息加密,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07SpringBoot實(shí)現(xiàn)聯(lián)表查詢(xún)的代碼詳解
這篇文章主要介紹了SpringBoot中如何實(shí)現(xiàn)聯(lián)表查詢(xún),文中通過(guò)代碼示例和圖文結(jié)合的方式講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-05-05Spring Boot中l(wèi)ombok的安裝與使用詳解
這篇文章主要給大家介紹了關(guān)于Spring Boot中l(wèi)ombok安裝與使用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09PowerJobAutoConfiguration自動(dòng)配置源碼流程解析
這篇文章主要為大家介紹了PowerJobAutoConfiguration自動(dòng)配置源碼流程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12