java抽獎基礎(chǔ)代碼 java實現(xiàn)抽獎概率算法

Java代碼實現(xiàn)抽獎:從班級的學號中抽出一個一等獎,兩個二等獎,三個三等獎

抽取問題, 重點是 同一個學號不能重復被抽取.

專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計、網(wǎng)站制作服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)靈丘免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了超過千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

解決辦法很多,

比如數(shù)組可以使用下標來標記,號碼是否被使用,使用了就繼續(xù)下一次抽取

也可以使用集合來抽取,把集合順序打亂,然后隨便抽幾個就可以了

參考代碼:數(shù)組法

import?java.util.Random;

public?class?Test?{

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

int?stuNums=30;

int[]?nums=new?int[stuNums];//存儲學號的數(shù)組

boolean[]?flags=new?boolean[stuNums];//標記,用于標記對應下標的學號是否已經(jīng)被抽取過了

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

nums[i]=i+1;//給學號賦值

}

Random?r=new?Random();

while(true){

int?index?=?r.nextInt(stuNums);

if(!flags[index]){

System.out.println("A等:"+nums[index]);

flags[index]=true;?//標記已經(jīng)被使用過了

break;

}

}

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

int?index?=?r.nextInt(stuNums);

if(!flags[index]){

System.out.println("B等:"+nums[index]);

flags[index]=true;

}else{

i--;//如果已經(jīng)被抽取過了?,那么i建議,再次循環(huán)

}

}

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

int?index?=?r.nextInt(stuNums);

if(!flags[index]){

System.out.println("c等:"+nums[index]);

flags[index]=true;

}else{

i--;

}

}

}

}

集合法

import?java.util.ArrayList;

import?java.util.Collections;

public?class?Test2?{

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

int?stuNums=20;

ArrayListInteger?list=new?ArrayListInteger();

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

list.add(i+1);

}

System.out.println("有序"+list);

Collections.shuffle(list);//打亂順序

System.out.println("亂序"+list);

System.out.println("A等"+list.get(0));

System.out.println("B等"+list.get(1));

System.out.println("B等"+list.get(2));

System.out.println("C等"+list.get(3));

System.out.println("C等"+list.get(4));

System.out.println("C等"+list.get(5));

}

}

商場推出幸運抽獎活動的java初級代碼編寫

public class Lucky {

public static void main(String[] args){

System.out.println("請輸入您的4位會員卡號:");

Scanner sc = new Scanner(System.in);

int number = sc.nextInt(); //接收用戶從控制臺輸入的會員卡號,并保存在會員卡號變量中

int a = number/1000; //千位

int b = number%1000/100; //百位

int c = number%100/10; //十位

int d = number%10; //個位

if((a+b+c+d)20){

System.out.println("恭喜中獎!您是幸運客戶");

}else{

System.out.println("謝謝參與!");

}

}

}

最基礎(chǔ)的 沒有異常判斷 無限循環(huán)輸入什么東西

java抽獎程序

我給你個比較簡單的,,但是需要按照你的要求進行稍微的修改。。然后在main方法中去執(zhí)行就可以了:

public class GoodLuck {

int custNo;

int i=1;

String answer;

String awardName;

public void LuckNo(){

Scanner input=new Scanner(System.in);

System.out.println("\n我行我素購物管理系統(tǒng) 幸運抽獎\n");

do{

// 需要的話請把隨機數(shù)調(diào)整成你想要的范圍(我這個是為了測試方便寫的1

(~3的隨機數(shù),根據(jù)你的需要把下面的3換成你想要的數(shù)字就行了)

int num=(int)(Math.random()*3+1);

System.out.print("請輸入會員卡號(4位整數(shù)):");

custNo=input.nextInt();

//百位數(shù)與隨機數(shù)相同的為幸運者

int bai=custNo/100%10;

while(i==1){

if(custNo=1000custNo=9999){

break;

}

else{

System.out.println("\n會員號碼輸入有誤,請重新輸入:");

custNo=input.nextInt();

continue;

}

}

if(bai==num){

showAward();

System.out.print("\n卡號:"+custNo+"是幸運客戶,獲得"+awardName);

}else{

System.out.print("\n卡號:"+custNo+"\t謝謝您的支持!");

}

System.out.println("\n是否繼續(xù)(y/n)");

answer=input.next();

while(i==1){

if(answer.equals("y")||answer.equals("n")){

break;

}else{

System.out.print("輸入有誤!請重新輸入:");

answer=input.next();

continue;

}

}

}while(!answer.equals("n"));

}

public void showAward(){

int num=(int)(Math.random()*3+1);

if(num==1){

awardName="Mp3";

}

else if(num==2){

awardName="美的微波爐";

}

else{

awardName="美的電飯鍋";

}

}

求一份抽獎游戲(Java寫的代碼)

import?java.util.Scanner;

/**

*

*/

public?class?f?{

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

Scanner?scan?=?new?Scanner(System.in);

System.out.print("請輸入抽獎號碼上限:");

int?max?=?scan.nextInt();

System.out.print("請輸入抽獎次數(shù):");

int?n?=?scan.nextInt();

System.out.print("中獎號碼依次為:");

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

System.out.print((int)(Math.random()*max+1)+"?");

}

}

}

網(wǎng)站名稱:java抽獎基礎(chǔ)代碼 java實現(xiàn)抽獎概率算法
標題URL:http://muchs.cn/article16/ddcgggg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、虛擬主機關(guān)鍵詞優(yōu)化、移動網(wǎng)站建設(shè)、全網(wǎng)營銷推廣微信公眾號

廣告

聲明:本網(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è)