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("請輸入抽獎次數:");
int?n?=?scan.nextInt();
System.out.print("中獎號碼依次為:");
for(int?i=0;in;i++){
System.out.print((int)(Math.random()*max+1)+"?");
}
}
}
用一個Int[]數組記錄隨機到的數字,
插代碼:
int[] count=new i[6];//用于接收生成的隨機數
for(int i=0;ii.length;i++)
{
Random rand = new Random(); int c = rand.nextInt(); //int范圍類的隨機數 c = rand.nextInt(30); //生成0-30以內的隨機數 c = (int)(Math.random() * 30); //0-30以內的隨機數 count[i]=c;}
抽取問題, 重點是 同一個學號不能重復被抽取.
解決辦法很多,
比如數組可以使用下標來標記,號碼是否被使用,使用了就繼續下一次抽取
也可以使用集合來抽取,把集合順序打亂,然后隨便抽幾個就可以了
參考代碼:數組法
import?java.util.Random;
public?class?Test?{
public?static?void?main(String[]?args)?{
int?stuNums=30;
int[]?nums=new?int[stuNums];//存儲學號的數組
boolean[]?flags=new?boolean[stuNums];//標記,用于標記對應下標的學號是否已經被抽取過了
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;?//標記已經被使用過了
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--;//如果已經被抽取過了?,那么i建議,再次循環
}
}
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));
}
}
public String[] findluckMen(String[] data , int n){
Random random = new Random();
int len = data.length;
String[] luckmen = new String[len];
for(int i=0;ilen;i++){
int index = random.nextInt(len);
luckmen[i] = data[index ];
}
return luckmen;
}
分享名稱:java抽獎程序代碼 java課程設計
分享路徑:http://vcdvsql.cn/article38/dopijsp.html
成都網站建設公司_創新互聯,為您提供定制網站、企業網站制作、用戶體驗、品牌網站設計、微信小程序、建站公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯