Java實戰(zhàn)入門之雙色球彩票小游戲
更新時間:2021年04月23日 16:53:56 作者:小小龍o0
這篇文章主要介紹了Java實戰(zhàn)入門之雙色球彩票,文中有非常詳細的代碼示例,對正在學習java的小伙伴們有非常好的幫助,需要的朋友可以參考下
一、項目需求

二、項目思路
1、菜單制作
2、中獎號碼生成 getNumber (隨機數(shù) Math.random)
3、購買號碼和中獎號碼比對 生成中獎等級
三、完整代碼
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;//默認情況下沒有買彩票
while (true){
System.out.println("------------歡迎進入雙色球彩票系統(tǒng)----------------");
System.out.println("1、購買彩票");
System.out.println("2、查看開獎");
System.out.println("3、退出");
System.out.println("請選擇你要完成的功能");
Scanner sc = new Scanner(System.in);
int choice = sc.nextInt();
switch (choice){
case 1:
System.out.println("雙色球系統(tǒng)》》購買彩票");
System.out.println("請選擇你要購買幾注:");
count = sc.nextInt();
//定義一個變量 如果每購買提示不能直接開獎
for (int i = 1; i <= 7; i++) {
if(i != 7){//錄入紅色
System.out.println("請錄入第"+i+"個紅球");
balls[i-1] = sc.nextInt();
}else { //錄入藍色
System.out.println("請錄入一個藍色球");
balls[i-1] = sc.nextInt();
}
}
System.out.println("您購買了"+count+"注彩票,一共消費了"+count*2+"元錢,您購買的彩票號碼為: ");
//遍歷數(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)》》查看開獎");
//1 生成
int[] luckBalls= getNumber();
//2 對比
int level = getlevel(balls,luckBalls);
//3 顯示結(jié)果
System.out.println("本期中獎號碼為:"+luckBalls[0]+" "+luckBalls[1]+" "+luckBalls[2]+" "+luckBalls[3]+" "+luckBalls[4]+" "+luckBalls[5]+" "+luckBalls[6]);
switch (level){
case 1:
System.out.println("恭喜您,中了一等獎,1注獎金500萬,您一共獲得: "+500*count+"萬元");
break;
case 2:
System.out.println("恭喜您,中了二等獎,1注獎金100萬,您一共獲得: "+100*count+"萬元");
break;
case 3:
System.out.println("恭喜您,中了三等獎,1注獎金30萬,您一共獲得: "+30*count+"萬元");
break;
case 4:
System.out.println("恭喜您,中了四等獎,1注獎金5萬,您一共獲得: "+5*count+"萬元");
break;
case 5:
System.out.println("恭喜您,中了五等獎,1注獎金2000千元,您一共獲得: "+2000*count+"元");
break;
case 6:
System.out.println("恭喜您,中了六等獎,1注獎金5元,您一共獲得: "+5*count+"元");
break;
}
}else {
System.out.println("對不起,請先購買彩票");
}
break;
case 3:
System.out.println("雙色球系統(tǒng)》》退出");
return;
}
}
}
public static int[] getNumber(){
int[] getNumber = new int[7];
//隨機數(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;
}
//比對是否中獎,中幾等獎
public static int getlevel(int[] balls,int[] luckBalls){
//設置兩個計數(shù) 紅球和籃球 每相同一個就加一次。
int level = 0;
int redCount = 0;
int blueCount = 0;
//遍歷購買的號碼
for (int i = 0; i < 7; i++) {
if (i != 6){
for (int j = 0; j < 6; j++) {
if (balls[i] == luckBalls[j]){
redCount++;
}
}
}else { //籃球中獎
if(balls[6] == luckBalls[6]){
blueCount++;
}
}
}
//輸出比對結(jié)果
//根據(jù)紅藍球相等數(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;
}
}
四、功能演示



到此這篇關于Java實戰(zhàn)入門之雙色球彩票的文章就介紹到這了,更多相關java雙色球彩票內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Android讀取本地或網(wǎng)絡圖片并轉(zhuǎn)換為Bitmap
這篇文章主要為大家詳細介紹了Android讀取本地或網(wǎng)絡圖片,并轉(zhuǎn)換為Bitmap,感興趣的小伙伴們可以參考一下2016-08-08
SpringBoot實現(xiàn)application.yml文件敏感信息加密
本文主要介紹了SpringBoot實現(xiàn)application.yml文件敏感信息加密,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07
SpringBoot實現(xiàn)聯(lián)表查詢的代碼詳解
這篇文章主要介紹了SpringBoot中如何實現(xiàn)聯(lián)表查詢,文中通過代碼示例和圖文結(jié)合的方式講解的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下2024-05-05
Spring Boot中l(wèi)ombok的安裝與使用詳解
這篇文章主要給大家介紹了關于Spring Boot中l(wèi)ombok安裝與使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。2017-09-09
PowerJobAutoConfiguration自動配置源碼流程解析
這篇文章主要為大家介紹了PowerJobAutoConfiguration自動配置源碼流程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12

