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

java生成6位隨機數

發布時間:2024-09-18 20:45:23

㈠ 關於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.

㈡ 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);
}
}

㈢ 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

㈣ java 設計程序隨機生成6個1-36之間的整數,要求6個數值不能重復。按從小到大的順序顯示這六個數。

importjava.util.ArrayList;
importjava.util.Collections;
importjava.util.Random;


publicclassasd{

/**
*@paramargs
*/
@SuppressWarnings("unchecked")
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
ArrayListal=newArrayList();
ArrayListal1=newArrayList();
for(inti=0;i<36;i++)//此處可以改為i<6,每次運行都輸出123456表示正確
{
al.add(i+1);//集合中存放1-36
}
Randomnd=newRandom();

for(inti=0;i<6;i++)
{
intte=nd.nextInt(al.size())+0;//生成一個隨機數,隨機數取值為0-集合的下標
al1.add(al.get(te));//把取得的數存到另一個集合,因為你要排序,集合的sort方法比較給力
al.remove(te);//將取得的數移除,以免取到相同的數
}
Collections.sort(al1);//將取得的六個數進行從小到大的排序
System.out.println(al1);

}

}

㈤ 怎樣用java產生一個指定范圍的隨機數

java.util
類 Random
java.lang.Object
java.util.Random
所有已實現的介面:
Serializable
直接已知子類:
SecureRandom

--------------------------------------------------------------------------------

public class Randomextends Objectimplements Serializable此類的實例用於生成偽隨機數流。此類使用 48 位的種子,使用線性同餘公式對其進行修改(請參閱 Donald Knuth 的《The Art of Computer Programming, Volume 2》,第 3.2.1 節)。

如果用相同的種子創建兩個 Random 實例,則對每個實例進行相同的方法調用序列,它們將生成並返回相同的數字序列。為了保證屬性的實現,為類 Random 指定了特定的演算法。為了 Java 代碼的完全可移植性,Java 實現必須讓類 Random 使用此處所示的所有演算法。但是允許 Random 類的子類使用其他演算法,只要其符合所有方法的常規協定即可。

Random 類所實現的演算法使用一個 protected 實用工具方法,每次調用它都可提供最多 32 個偽隨機生成的位。

很多應用程序會發現 Math 類中的 random 方法更易於使用。

從以下版本開始:
JDK1.0
另請參見:
Math.random(), 序列化表格

--------------------------------------------------------------------------------

構造方法摘要
Random()
創建一個新的隨機數生成器。
Random(long seed)
使用單個 long 種子創建一個新隨機數生成器: public Random(long seed) { setSeed(seed); } next 方法使用它來保存隨機數生成器的狀態。
方法摘要
protected int next(int bits)
生成下一個偽隨機數。
boolean nextBoolean()
返回下一個偽隨機數,它是從此隨機數生成器的序列中取出的、均勻分布的 boolean 值。
void nextBytes(byte[] bytes)
生成隨機位元組並將其置於用戶提供的位元組數組中。
double nextDouble()
返回下一個偽隨機數,它是從此隨機數生成器的序列中取出的、在 0.0 和 1.0之間均勻分布的 double 值。
float nextFloat()
返回下一個偽隨機數,它是從此隨機數生成器的序列中取出的、在 0.0 和 1.0 之間均勻分布的 float 值。
double nextGaussian()
返回下一個偽隨機數,它是從此隨機數生成器的序列中取出的、呈高斯(「正常地」)分布的 double 值,其平均值是 0.0,標准偏差是 1.0。
int nextInt()
返回下一個偽隨機數,它是此隨機數生成器的序列中均勻分布的 int 值。
int nextInt(int n)
返回一個偽隨機數,它是從此隨機數生成器的序列中取出的、在 0(包括)和指定值(不包括)之間均勻分布的 int值。
long nextLong()
返回下一個偽隨機數,它是從此隨機數生成器的序列中取出的、均勻分布的 long 值。
void setSeed(long seed)
使用單個 long 種子設置此隨機數生成器的種子。
樓下的,直接說不理解有什麼用

㈥ java程序:編寫生成100個1-6之間的隨機數,統計1—6每個出現的概率,菜鳥看不懂程序

1.用內置方法Math.random()產生一個隨機數介於0~1。
2.強制轉化為int類型,根據int類型的特點,這個數是0~5之間的整數。
3.得到的數加1,這樣這個數就是介於1~6的整數,並且是隨機的。
4.將介於1~6之間的這個整數賦值給randomNum
5.(重點)probability是個數組,這個程序的演算法就是:利用probability這個數組記錄隨機數出現的次數,probability[0]記錄隨機數1出現的次數,就是當出現的隨機數為1時,數組的probability[randomNum-1]項加1(randomNum-1是為了表現演算法,實際的程序中是不需要先加1再減1的)。同理:其它的隨意數也做這樣的處理。這樣,probability這個數組中[0]項保存的是1的出現次數,[1]項保存的是2出現的次數…………
6.輸出隨機數的值(後面加個空格「\t」)
7.循環到步驟第1.個步驟.

㈦ 請問:java產生6位數字的隨機數怎麼寫最後給個代碼類

有沒有 具體的什麼要求呀,下面是生成一個。多的話加個計數器就好了!!

import java.util.Random;

public class test {

static Random r = new Random();

public static void main(String[] args) {

int x = r.nextInt(999999);

if(x > 100000) {
System.out.println(x);
return;
}

}
}

那以上的代碼就可以了,你運行下看看。 有別的要求再說!

㈧ Java怎麼產生隨機數

一、利用random方法來生成隨機數。

在Java語言中生成隨機數相對來說比較簡單,因為有一個現成的方法可以使用。在Math類中,Java語言提供了一個叫做random的方法。通過這個方法可以讓系統產生隨機數。

二鉛伍旁、通過Random類來生成隨機數。

在Java語言中,除了可以通過random 方法來產生隨機數之外,還可以通過一個random類來產生隨機數。程序開發人員可以通過實例化一個Random對象來創建一個隨機數的生成器。如 Random i=new Random()。通過這條語句就利用了Random類創建了一個隨機數的生成器。數

三、產生隨機的字元。

可以利用random方法來產生隨機字元。如可以利用代碼生成一個隨機的小寫字元:(char)(『a』+Math.random()*(『z』-『a』+1))。其實這跟生成任意兩個數之間的隨機數類似。通過以上的代碼就可以生成一個范圍之內的任意隨機字元。通過對這個代碼進行適當的修整,還可以生成任意兩個字元之間的隨機字元與任意大寫字元的隨機字元。其轉換的方式跟上面提到的任意范圍之內的隨機數類似。

閱讀全文

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

熱點內容
圖像拼接計演算法 瀏覽:253
怎麼打開飢荒伺服器的本地文件夾 瀏覽:291
usb掃描槍編程 瀏覽:673
博易大師手機app叫什麼 瀏覽:663
刮眼影盤解壓方法 瀏覽:966
蘋果手機怎麼登安卓抖音號 瀏覽:146
如何計算伺服器所需的各種參數 瀏覽:331
很漢字疊在一起加密文字 瀏覽:115
懂車帝app屬於什麼類目 瀏覽:422
編程加入串聯點位 瀏覽:360
什麼是擺攤app 瀏覽:362
解壓游戲文件md5 瀏覽:111
如何把pdf分開 瀏覽:241
虛幻4材質節點編譯 瀏覽:731
雲伺服器游戲推薦 瀏覽:885
app怎麼畫房子 瀏覽:341
vba上級文件夾 瀏覽:243
源代碼編譯得到的文件叫什麼 瀏覽:122
程序員怎麼提升 瀏覽:786
ibm伺服器如何開vt 瀏覽:773