導航:首頁 > 編程語言 > java生成6隨機數字

java生成6隨機數字

發布時間:2025-03-13 07:34:31

A. java:怎樣產生1~6的隨機數,並使1~4產生的概率大一些呢

用概率模型,先隨機一次看取用哪個概率,隨後再隨機一次。代碼示例如下:

importjava.util.Random;
publicclassHelloWorld{
publicstaticvoidmain(String[]args)
{
Randomrandom=newRandom();
doublep1=0.7;//1~4的概率
doublep=(((int)random.nextInt(10)%(10)+1)*1.0/10<p1)?p1:(1-p1);//實際所取概率
intmax=(p==p1)?4:6;
intnum=(int)random.nextInt(max)%(max)+1;
System.out.print(num);
}
}

B. java中如何編寫輸出一組由大寫和數字組成的6個隨機驗證碼,字母O和I不能輸出

importjava.util.Random;

publicclassTest{
publicstaticvoidmain(String[]args){
charc='i';
StringBuffersb=newStringBuffer();
for(inti=0;i<6;i++){
inta=Math.abs((newRandom()).nextInt(57));//產生0~57的隨機數
if(a<=9){//將0~9轉為char的0~9
sb.append((char)(a+48));
}elseif(a<33){//將10~33轉為char的A~Z
if((a+55)==79||(a+55)==73){
sb.append((char)(a+63));
}else{
sb.append((char)(a+55));
}
}else{//將33~57轉為char的a~z
sb.append((char)(a+63));
}
}
System.out.println("隨機生成的6位密碼為:"+sb.toString());
}
}

C. 關於Java里產生1-6隨機數的方法

我認為2種方法產生的1~6的幾率是相等的,都為1/6.

第一種(int)(Math.random()*10)%6得到0~6的隨機數,每個數的產生的概率為1/7,再加上1,得到1~6的隨機數,0不再出現,每個數產生的幾率1/6.

另一種(int)(Math.random()*6)產生0~5,每個數產生的概率為1/6,再加上1,得到1~6的隨機數,每個數產生的幾率仍為1/6.

D. 請問用java從1-33個整數中隨機抽取6個數字 且不重復 該怎麼寫

public static void main(String[] args) {
int[] x = new int[33]; //創建值為1-33的整數表, 初始化
for (int i = 0; i < x.length; i++) {
x[i] = i+1;
}
// -------------------------------------------------
for (int i = 0; i < 6; i++) { // 隨機取值6次 (你可以把6改成33. 試試看會不會出現重復值)
int j = (int) (Math.random()*(33-i)); // 隨機值依次遞減1, 以保證不可能重復隨機到33這個值
System.out.println("第" + (i+1) + "個隨機數為: "+ x[j]);// 輸出隨機值(真正的隨機值為整數表x中的數)
x[j] = x[33-i-1]; // 整數表x中已被隨機到的值替換為表中最後一個數, 避免以後可能隨機到
}
// -------------------------------------------------
// 整個思路你可以想像成是棧堆的出棧, 隨機到的值出棧, 就不會隨機到重復值
}

有問題歡迎繼續提問, 希望能幫你解決問題!

E. Java編程生成100個1~6之間的隨機數,統計1~6每個數出現的概率;

java里生成隨機數主要有2個方法比較常用.

1.Random類. 在java.util.包里, 有多種方法可以隨機產生int, long, double,boolean等類型

2.Math 類,在java.lang.包里, 可以生成一個[0~1)之間的隨機浮點數

*備注* :a. )使用Random需要導包,但是使用Math無需導包.

b. )Math底層還是調用了Random類的nextDouble()方法

例如生成[1,6]之間的隨機數

1 .Random的方法,生成的隨機數

Randomr=newRandom();	
intnum1=r.nextInt(6)+1;//r.next(6)生成的是0~5之間的數字,需要+1,才是[1~6]之間的數字

2. Math的方法,進行隨機數的生成

intnum=(int)(Math.random()*6)+1;
//(int)(Math.random()*6)生成的是0~5之間的整數
//需要+1才是[1~6]的數字

2. 可以使用數組的方法來存出現的次數. 數字1~6 是連續的, 數組下標也是連續的.我們可以用下標[0~5] 來代表數字[1~6], 數組的每個格子用來存數字數字出現的次數

//本題使用數組來寫代碼比較方便,簡潔.
importjava.util.Random;

publicclassRandomDemo{
publicstaticvoidmain(String[]args){
int[]times=newint[6];//6個格子的數組,存儲出現的次數
intn=100;//循環的次數
Randomr=newRandom();
for(inti=0;i<n;i++){
intnum=r.nextInt(6)+1;//方法1隨機產生1~6的數字
//intnum=(int)(Math.random()*6)+1;//方法2隨機產生1~6的數字
times[num-1]=times[num-1]+1;//次數增加1
}

for(inti=0;i<times.length;i++){
System.out.println((i+1)+"出現的次數"+times[i]);
}
}
}

輸出: 當n=100時

1出現的次數13
2出現的次數16
3出現的次數17
4出現的次數23
5出現的次數21
6出現的次數10

輸出: 當n=1000時

1出現的次數160
2出現的次數177
3出現的次數161
4出現的次數169
5出現的次數175
6出現的次數158

F. 使用java語言輸出1到100之間的6個隨機不重復的整數之和

在Java中,我們可以通過編寫特定的代碼來生成1到100之間的6個隨機且不重復的整數,並計算它們的總和。為了實現這一點,我們需要使用一些循環和條件語句來確保每次生成的隨機數都是唯一的。下面是一個簡單的Java程序實例:

首先,我們需要導入必要的包,並定義一個主類GG。在main方法中,我們將使用一個循環來生成6個不重復的隨機數。為了實現這一點,我們設置了一個計數器變數count來跟蹤已生成的隨機數數量,以及一個臨時變數tmp來存儲當前生成的隨機數。

在循環內部,我們使用Math.random()方法生成一個0到1之間的隨機數,並將其轉換為1到100之間的整數。如果生成的隨機數已經存在於之前生成的隨機數列表中,則我們需要重新生成一個新的隨機數,直到找到一個獨特的數。

一旦我們得到了一個獨一無二的隨機數,我們將其存儲在變數n中,並將其輸出到控制台。同時,我們將計數器count增加1。當計數器達到6時,表示我們已經生成了6個不重復的隨機數,循環結束。

通過這種方式,我們可以確保每次生成的隨機數都是獨特的,並且它們的總和可以通過簡單的數學運算輕松計算出來。例如,如果生成的隨機數為33,45,22,88,99,15,那麼它們的總和就是282。

需要注意的是,上述代碼片段僅展示了如何生成不重復的隨機數,而並未包括計算這些數總和的具體實現。在實際應用中,可以根據需要對生成的隨機數進行進一步處理,例如計算它們的總和或者進行其他數學運算。

G. java 隨機生成一個六位數

publicclassGuessNum{
publicstaticvoidmain(String[]args){
inti=getRandomNum();
System.out.println("已生成隨機數!");
System.out.println(i);//方便測試列印出隨機數~~可刪除~~
while(true){
try{
System.out.print("請輸入一個6位正"+"整數:");
Readerreader=newInputStreamReader(System.in);
char[]b=newchar[6];
reader.read(b);
StringguessStr=newString(b).trim();
intguessInt=Integer.parseInt(guessStr);
if(guessInt==i){
System.out.println("恭喜猜對!");
break;
}
System.out.println("不對重猜!");
}catch(Exceptione){
System.out.println("輸入有誤!");
}
}
}

privatestaticintgetRandomNum(){
Randomr=newRandom();
returnr.nextInt(900000)+100000;
}
}

閱讀全文

與java生成6隨機數字相關的資料

熱點內容
資治通鑒中華書局pdf 瀏覽:212
如何搭建伺服器和資料庫 瀏覽:537
論文app怎麼用 瀏覽:466
開源文件伺服器加密 瀏覽:588
哈利波特游戲選什麼伺服器 瀏覽:424
雲伺服器怎樣格式化 瀏覽:16
框架柱頂部箍筋加密區規范 瀏覽:169
pythonjson文件讀取 瀏覽:105
夢幻西遊源碼架設 瀏覽:123
抽煙有解壓效果嗎 瀏覽:827
由於加密數據錯誤這個會話將結束 瀏覽:832
javaproject運行 瀏覽:255
0經驗轉行單片機 瀏覽:638
什麼叫解壓縮下載的文件 瀏覽:862
什麼牌子的手機加密狗好用 瀏覽:536
程序員編程學習筆記 瀏覽:864
吃雞亞服怎麼選擇不了伺服器 瀏覽:658
數控設備宏程序編程 瀏覽:840
高速銑編程培訓 瀏覽:650
天正改命令 瀏覽:773