這篇源代碼優(yōu)點小問題:有時間再調(diào)試 package zaizhu.da; import java.util.Arrays;//數(shù)組類 import java.util.Scanner;//輸入類 import java.util.Random;//隨機數(shù)類 public class Test35 { public static void main(String[] args) { int[] userRedBall=new int[6];//用戶紅球 int userBlueBall=0;//用戶藍球 int[] sysRedBall=new int[6];//系統(tǒng)紅球 int sysBlueBall=0;//系統(tǒng)藍球 int redCount=0;//記錄紅球 int blueCount=0;//記錄籃球 int[] redBall=new int[33];//存儲紅球 //需要隨機生成 1---33不重復的6 個數(shù) for(int i=0;i<redBall.length;i++) { redBall[i]=i+1; } //游戲開始 System.out.println("游戲開始!"); System.out.println("請問你是機選還是手選?1.機選 2手選"); Scanner input=new Scanner(System.in); Random r=new Random(); boolean flag=true; while(flag) { int isAuto=input.nextInt(); switch(isAuto) {//1 機選 2手選 case 1: computerSelection(redBall,userRedBall);//機選紅球 userBlueBall=r.nextInt(17);//機選籃球 flag=false;//退出循環(huán) break; case 2: System.out.println("請選擇6個號碼:(1--33)"); for(int i=0;i<userRedBall.length;i++) { userRedBall[i]=input.nextInt(); } System.out.println("請選擇一個籃球:(1--16)"); userBlueBall=input.nextInt(); flag=false; break; } } //系統(tǒng)隨機生成號碼: //紅球 computerSelection(redBall,sysRedBall); //籃球 sysBlueBall=r.nextInt(16)+1; //統(tǒng)計結(jié)果: //紅球: for(int i=0;i<userRedBall.length;i++) { for(int j=0;j<sysRedBall.length;j++) { if(userRedBall[i]==sysRedBall[j]) { int temp=sysRedBall[j]; sysRedBall[j]=sysRedBall[sysRedBall.length-1-redCount]; sysRedBall[sysRedBall.length-1-redCount]=temp; redCount++; break; } } } //籃球: if(userBlueBall==sysBlueBall) { blueCount=1; } //驗證是否中獎 if(blueCount==0&&redCount==0) { System.out.println("革命尚未成功,同志任需努力!"); }else if(blueCount==1&&redCount<=3){ System.out.println("恭喜你!中了六等獎!5元"); }else if((blueCount==1&&redCount==3)&&(blueCount==0&&redCount==4)) { System.out.println("恭喜你!中了五等獎!10元"); }else if((blueCount==1&&redCount==4)&&(blueCount==0&&redCount==5)) { System.out.println("恭喜你!中了四等獎!200元"); }else if((blueCount==1&&redCount==5)&&(blueCount==0&&redCount==6)) { System.out.println("恭喜你!中了三等獎!3000元"); }else if(blueCount==0&&redCount==6) { System.out.println("恭喜你!中了二等獎!20W朝上!"); }else if(blueCount==1&&redCount==6) { System.out.println("恭喜你!中了一等獎!900W附近!"); }else { System.out.println("系統(tǒng)輸出有誤!"); } //公布系統(tǒng)號碼: System.out.println("本期中獎號碼:"); sort1(sysRedBall); System.out.println("Arrays.toString(sysRedBall)"); System.out.println("Arrays.toString(sysBlueBall)"); //公布用戶號碼: System.out.println("你的號碼:"); sort1(userRedBall); System.out.println("Arrays.toString(userRedBall)"); System.out.println("Arrays.toString(userBlueBall)"); } //冒泡排序 public static void sort1(int[] ball) { for(int i=0;i<ball.length;i++) { for(int j=0;j<ball.length-1-i;j++) { if(ball[j]>=ball[j+1]) { ball[j]=ball[j]+ball[j+1]; ball[j+1]=ball[j]-ball[j+1]; ball[j]=ball[j]-ball[j+1]; } } } } //指定數(shù)列中隨機生成不重復數(shù)列 //1--33 //6個數(shù) public static void computerSelection(int[] redBall,int[] userRedBall) { Random r=new Random(); int index=-1; for(int i=0;i<userRedBall.length;i++) {//循環(huán)六次 index=r.nextInt(redBall.length-i); userRedBall[i]=redBall[index]; int temp=redBall[index]; redBall[index]=redBall[redBall.length-i-1]; redBall[redBall.length-i-1]=temp; } } } 分享知識,分享快樂!希望中國站在編程之巔! ----融水公子 |
|