java雙色球代碼簡單 雙色球java程序代碼出現(xiàn)概率

java程序編寫雙色球代碼

截圖:

哈爾濱網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,哈爾濱網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為哈爾濱1000多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的哈爾濱做網(wǎng)站的公司定做!

選取紅色球號碼方法:

/**

?*?隨機選取紅色球

?*?

?*?獲取1~33其中一個數(shù)

?*?

?*?0?=?Math.random??1

?*/

private?int?randomOneRedValue()?{

int?randomValue?=?(int)?(Math.random()?*?33?+?1);

return?randomValue;

}

選取藍(lán)色球號碼方法:

/**

?*?隨機選取藍(lán)色球號碼

?*?

?*?獲取1~16的數(shù)值

?*?

?*?@return

?*/

private?int?randomOneBlueValue()?{

int?randomValue?=?(int)?(Math.random()?*?15?+?1);

return?randomValue;

}

測試:

public?class?Test1?{

public?static?void?main(String[]?arg)?{

Test1?localTest1?=?new?Test1();

//?雙色球?:紅色球號碼?+?藍(lán)色球號碼

//?六個紅色球和一個藍(lán)色球號碼

//?紅色球號碼從1~33中選擇

//?藍(lán)色球號碼從1~16中選擇

//?一等獎:七個號碼相符(六個紅色號碼和一個藍(lán)色球號碼)(紅色球號碼順序不限,下同)

//?二等獎:六個紅色球號碼相符;

//?三等獎:五個紅色球號碼,或者四個紅色球號碼和一個藍(lán)色球號碼相符;

//?四等獎:五個紅色球號碼,或者三個紅色球號碼和一個藍(lán)色球號碼相符;

//?五等獎:四個紅色球號碼,或者三個紅色球號碼和一個藍(lán)色球號碼相符;

//?六等獎:一個藍(lán)色球號碼相符(有誤紅色球號碼相符均可);

//?例如:紅色球號碼?01?06?13?19?24?28?藍(lán)色球號碼?16

System.out.println("開始出獎");

//?定義雙色球數(shù)組,大小為7

String[]?values?=?new?String[7];

for?(int?i?=?0;?i??7;?i++)?{

if?(i?==?6)?{

int?blueValue?=?localTest1.randomOneBlueValue();

if?(blueValue??10)?{

values[i]?=?"0"?+?blueValue;

}?else?{

values[i]?=?String.valueOf(blueValue);

}

}?else?{

int?redValue?=?localTest1.randomOneRedValue();

if?(redValue??10)?{

values[i]?=?"0"?+?redValue;

}?else?{

values[i]?=?String.valueOf(redValue);

}

}

}

System.out.println();

System.out.println("出獎結(jié)束");

System.out.println();

System.out.print("雙色球開獎號碼:");

//?打印雙色球號碼

for?(String?value?:?values)?{

System.out.print("?"?+?value);

}

}

}

Java模擬生成雙色球

public void main (String[] args){

int[] red=new int[7];

int blue=0;

for(int i=0;i7;i=i+1){

red[i]=getRandom(33);

//判斷重復(fù)

while(true){

boolean needcheck=false;

for(int k=0;ki;k=k+1) { if(red[i]==red[k]){ needcheck=true; }}

if(needcheck){red[i]=red[i]+1; if(red[i]==34){red[i]=1}}else{break;}

}

//判斷重復(fù)結(jié)束

}

//紅球賦值結(jié)束

blue=getRandom(16);

System.out.println("生成的紅球為:"+ red[0]+red[1]+red[2]+red[3]+red[4]+red[5]+red[6]);

System.out.println("生成的藍(lán)球為:"+ );

}

public int getRandom(int Max){

return Math.floor(Math.random()*33)+1;

}

求java大神給解釋以下雙色球代碼的意思。

public class sedasd {

static Random random = new Random();

public static void main(String[] args) {

System.out.println(Arrays.toString(getStor(getRed())));/*getRed()得到存儲取出的號碼的數(shù)組ns

getStor()對數(shù)組的輸出格式進(jìn)行格式化

*/

}

public static int[] getRed() {

int[] num = new int[33];

int[] ns = new int[6];

int index = 0;

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

int temp = random.nextInt(33);

if (num[temp] == 0) { //判斷取出的號碼是不是第一次取出

ns[index] = temp + 1; //random.nextInt(33)是從零到32所以要加1

num[temp] = 1;

index++;

}

if (!(ns[5] == 0)) { //判斷是不是取6個號碼

return ns;

}

}

return ns;

}

public static String[] getStor(int[] s) {

String[] ns = new String[6];

Arrays.sort(s);

for (int i = 0; i s.length; i++) {

if (s[i] 10) {

ns[i] = "0" + s[i];

} else {

ns[i] = "" + s[i];

}

}

return ns;

}

}

希望可以幫到你,要是還不理解可以在問我。。。

java 面向?qū)ο?雙色球設(shè)計

1、球?qū)ο?/p>

public?class?Ball?{

private?String?color;

private?int?number;

public?String?getColor()?{

return?color;

}

public?void?setColor(String?color)?{

this.color?=?color;

}

public?int?getNumber()?{

return?number;

}

public?void?setNumber(int?number)?{

this.number?=?number;

}

}

2、球池對象

import?java.util.Random;

public?class?BallPond?{

private?Ball[]?balls;

private?Ball[]?resultBalls;

public?Ball[]?getBalls()?{

return?balls;

}

//生成原始球池

public?void?setBalls(String?color)?{

Ball[]?balls?=?null;

if(color.equals("red")){//生成紅球池

Ball[]?redBalls?=?new?Ball[33];

for(int?i=1;i=33;i++){

Ball?ball?=?new?Ball();

ball.setColor("red");

ball.setNumber(i);

redBalls[i-1]?=?ball;

}

balls?=?redBalls;

}else{//生成藍(lán)球池

Ball[]?blueBalls?=?new?Ball[16];

for(int?i=1;i=16;i++){

Ball?ball?=?new?Ball();

ball.setColor("blue");

ball.setNumber(i);

blueBalls[i-1]?=?ball;

}

balls?=?blueBalls;

}

this.balls?=?balls;

}

public?Ball[]?getResultBalls()?{

return?resultBalls;

}

//生成結(jié)果球池

public?void?setResultBalls()?{

Ball[]?resultBalls?=?null;

Random?r?=?new?Random();

if(("red").equals(this.balls[0].getColor())){//取紅球6個

Ball[]?resultRedBalls?=?new?Ball[6];

int[]?nums?=?new?int[6];

for(int?i=0;i6;i++){

int?n?=?r.nextInt(33)+1;

int?flag?=?0;

for(int?j=0;j6;j++){

if(n==nums[j]){

flag?=?flag?+?1;

}

}

if(flag==0){

nums[i]=n;

}

}

for(int?k=0;k6;k++){

int?tip?=?nums[k];

resultRedBalls[k]?=?this.balls[tip];

}

resultBalls?=?resultRedBalls;

}else{//取藍(lán)球1個

Ball[]?resultBlueBalls?=?new?Ball[1];

int?n?=?r.nextInt(16)+1;

resultBlueBalls[0]?=?this.balls[n];

resultBalls?=?resultBlueBalls;

}

this.resultBalls?=?resultBalls;

}

}

3、主方法調(diào)用

public?class?DoubleColorBall?{

public?static?void?main(String[]?args)?{

//紅球池

BallPond?redBalls?=?new?BallPond();

//藍(lán)球池

BallPond?blueBalls?=?new?BallPond();

//初始化球池

redBalls.setBalls("red");

blueBalls.setBalls("blue");

//抽獎

redBalls.setResultBalls();

blueBalls.setResultBalls();

//輸出獲獎球號

System.out.println("紅球:");

for(int?i=0;i6;i++){

System.out.print(redBalls.getResultBalls()[i].getNumber()+"?");

}

System.out.println("\n藍(lán)球:");

System.out.print(blueBalls.getResultBalls()[0].getNumber());

}

}

PS:主方法引用以上兩個對象的時候注意引入你對象所放位置的包

結(jié)果如下:

Java雙色球程序

我能理解你的思路,但做法有點小問題,這種做法就注定了不好判斷是否重復(fù),給你提供一種更好的思路

public?static?void?main(String[]?args)?{

int?a[]=new?int?[6];

int?b=(int)(Math.random()*15+1);

// abcd:

// while(true){

// for(int?i=0;ia.length;i++){

// ????a[i]=(int)(Math.random()*35+1);//這里不要直接把隨機出來的數(shù)放進(jìn)數(shù)組,沒法判斷

// }

// for(int?i=0;ia.length-1;i++){ //你是想在這里循環(huán)判斷是否重復(fù)吧,思路是對的,

// //但過程太亂讀不明白了,a.length為什么要-1

// for(int?j=0;ja.length-1;j++){

// System.out.println(i);

// System.out.println(j);

// if(a[i]!=a[j]i!=jia.length){

// //問題在這,第一次循環(huán)i=0,j=0,沒有問題

// //第二次循環(huán)i還=0,j=1了,那i肯定是不等j,所以必然break,根本沒法判斷

// System.out.println("----"?+?j);

// break?abcd;

// }

// }

// }

// }

//下面是我給你提供的方法

int[]?balls?=?new?int[35];//創(chuàng)建一個有35個長度的數(shù)組作為選球池

for(int?i=0;iballs.length;i++){

balls[i]?=?i?+?1;?//循環(huán)放入1至35

}

boolean[]?used?=?new?boolean[balls.length];//創(chuàng)建一個boolean數(shù)組,用于記錄是否重復(fù)

//長度和球池等長

for(int?i?=?0;ia.length;i++){//循環(huán)向a數(shù)組中放入元素

for(;;){

int?index?=?(int)(Math.random()*35);//生成一個隨機數(shù),這里不再+1了,因為隨機的是下標(biāo),+1會出現(xiàn)越界

if(used[index]==true){?//如果used中,index的位置為true,則表示已經(jīng)被隨機過了

continue;//如果已經(jīng)被隨機過,則重新循環(huán)生成隨機數(shù)

}

a[i]?=?balls[index];//如果沒有被隨機過,則將index所對應(yīng)位置的元素放入a數(shù)組中

used[index]?=?true;//同時將該index位置設(shè)置為true,表示已經(jīng)被隨機過了

break;//退出當(dāng)前循環(huán),繼續(xù)下一次向a中添加元素

}

}

for(int?i=0;ia.length;i++){

for(int?j=0;ja.length-1-i;j++){

if(a[j]a[j+1]){

int?t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

}

// for(int?i=0;ia.length;i++){

// System.out.println(a[i]);

// }//輸出數(shù)組不需要這么麻煩

System.out.println(Arrays.toString(a));

System.out.println("藍(lán)色球為"+b);

}

用java寫一個簡單的雙色球系統(tǒng),我現(xiàn)在絞盡腦汁寫出來隨機一注,求問如何隨機多注并和開獎結(jié)果對比

把生成一注的代碼寫到一個方法中,這樣你想要生成2注,就調(diào)用方法兩次,生成3注就調(diào)用方法3次,想生成幾注就調(diào)用幾次方法。

分享名稱:java雙色球代碼簡單 雙色球java程序代碼出現(xiàn)概率
本文路徑:http://muchs.cn/article44/dossshe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、微信公眾號、建站公司、網(wǎng)站導(dǎo)航、網(wǎng)站收錄、標(biāo)簽優(yōu)化

廣告

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

成都網(wǎng)站建設(shè)