Java编程生成100个1~6之间的随机数,统计1~6每个数出现的概率; java程序:编写生成100个1-6之间的随机数,统计1—6...

\u7f16\u5199JAVA\u7a0b\u5e8f\uff0c\u751f\u6210100\u4e2a1\u52306\u4e4b\u95f4\u7684\u968f\u673a\u6570\uff0c\u7edf\u8ba11\u52306\u6bcf\u4e2a\u6570\u51fa\u73b0\u7684\u6982\u7387

class Test2
{
public static void main(String[] args)
{
int a[] = new int[100];
int count[] =new int[7];
System.out.println("\u751f\u6210\u7684\u968f\u673a\u6570");
for(int i = 0; i < 100; i++){
a[i] = (int)(Math.random()*6) + 1;
count[a[i]]++;
System.out.print(a[i] + " ");

}
System.out.println();
for(int i = 1; i < 7;i++){
System.out.println(i+":"+count[i]);
}

}
}

1.\u7528\u5185\u7f6e\u65b9\u6cd5Math.random()\u4ea7\u751f\u4e00\u4e2a\u968f\u673a\u6570\u4ecb\u4e8e0\uff5e1\u3002
2.\u5f3a\u5236\u8f6c\u5316\u4e3aint\u7c7b\u578b\uff0c\u6839\u636eint\u7c7b\u578b\u7684\u7279\u70b9\uff0c\u8fd9\u4e2a\u6570\u662f0\uff5e5\u4e4b\u95f4\u7684\u6574\u6570\u3002
3.\u5f97\u5230\u7684\u6570\u52a01\uff0c\u8fd9\u6837\u8fd9\u4e2a\u6570\u5c31\u662f\u4ecb\u4e8e1\uff5e6\u7684\u6574\u6570\uff0c\u5e76\u4e14\u662f\u968f\u673a\u7684\u3002
4.\u5c06\u4ecb\u4e8e1\uff5e6\u4e4b\u95f4\u7684\u8fd9\u4e2a\u6574\u6570\u8d4b\u503c\u7ed9randomNum
5.\uff08\u91cd\u70b9\uff09probability\u662f\u4e2a\u6570\u7ec4\uff0c\u8fd9\u4e2a\u7a0b\u5e8f\u7684\u7b97\u6cd5\u5c31\u662f\uff1a\u5229\u7528probability\u8fd9\u4e2a\u6570\u7ec4\u8bb0\u5f55\u968f\u673a\u6570\u51fa\u73b0\u7684\u6b21\u6570\uff0cprobability[0]\u8bb0\u5f55\u968f\u673a\u65701\u51fa\u73b0\u7684\u6b21\u6570\uff0c\u5c31\u662f\u5f53\u51fa\u73b0\u7684\u968f\u673a\u6570\u4e3a1\u65f6\uff0c\u6570\u7ec4\u7684probability[randomNum-1]\u9879\u52a01\uff08randomNum-1\u662f\u4e3a\u4e86\u8868\u73b0\u7b97\u6cd5\uff0c\u5b9e\u9645\u7684\u7a0b\u5e8f\u4e2d\u662f\u4e0d\u9700\u8981\u5148\u52a01\u518d\u51cf1\u7684\uff09\u3002\u540c\u7406\uff1a\u5176\u5b83\u7684\u968f\u610f\u6570\u4e5f\u505a\u8fd9\u6837\u7684\u5904\u7406\u3002\u8fd9\u6837\uff0cprobability\u8fd9\u4e2a\u6570\u7ec4\u4e2d[0]\u9879\u4fdd\u5b58\u7684\u662f1\u7684\u51fa\u73b0\u6b21\u6570\uff0c[1]\u9879\u4fdd\u5b58\u7684\u662f2\u51fa\u73b0\u7684\u6b21\u6570\u2026\u2026\u2026\u2026
6.\u8f93\u51fa\u968f\u673a\u6570\u7684\u503c\uff08\u540e\u9762\u52a0\u4e2a\u7a7a\u683c\u201c\t\u201d\uff09
7.\u5faa\u73af\u5230\u6b65\u9aa4\u7b2c1.\u4e2a\u6b65\u9aa4.

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的方法,生成的随机数

Random r= new Random();	
int num1 = r.nextInt(6)+1;//r.next(6)生成的是0~5之间的数字,需要+1,才是[1~6]之间的数字

2. Math的方法,进行随机数的生成

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

2. 可以使用数组的方法来存出现的次数. 数字1~6 是连续的, 数组下标也是连续的.我们可以用下标[0~5] 来代表数字[1~6], 数组的每个格子用来存数字数字出现的次数

//本题使用数组来写代码比较方便,简洁.
import java.util.Random;

public class RandomDemo {
public static void main(String[] args) {
int[] times = new int[6];//6个格子的数组,存储出现的次数
int n = 100;//循环的次数
Random r= new Random();
for (int i = 0; i < n; i++) {
int num = r.nextInt(6)+1;//方法1 随机产生1~6的数字
//int num = (int) (Math.random() * 6) + 1;//方法2 随机产生1~6的数字
times[num - 1] = times[num - 1] + 1;//次数增加1
}

for (int i = 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


import java.util.*;

public class TT {
public static void main(String[] args)
{
int[] a=new int[1000];
double[] b=new double[]{0.0,0.0,0.0,0.0,0.0,0.0};
Random t=new Random();
//for(int i=0;i<1000;i++)
for(int i=0;i<10;i++)
{
a[i]=t.nextInt(7);
System.out.println(a[i]);
if(a[i]==1)
b[0]++;
else if(a[i]==2)
b[1]++;
else if(a[i]==3)
b[2]++;
else if(a[i]==4)
b[3]++;
else if(a[i]==5)
b[4]++;
else
b[5]++;
}
System.out.println("1出现的概率是"+b[0]/1000);
System.out.println("2出现的概率是"+b[1]/1000);
System.out.println("3出现的概率是"+b[2]/1000);
System.out.println("4出现的概率是"+b[3]/1000);
System.out.println("5出现的概率是"+b[4]/1000);
System.out.println("6出现的概率是"+b[5]/1000);
}
}

上面的高手程序还是不错的,不过有个较大的错误:
a[i]=t.nextInt(7) ;应该改为a[i]=t.nextInt(5)+1;这样产生的随机数才在1-6之间.

import java.util.HashMap;
import java.util.Random;

public class test {
private static Random r=new Random();
private static HashMap h=new HashMap();
public static int getNos(){return r.nextInt(6)+1;}
public static void add(int no){
if(h.containsKey(no))
h.put(no,(Object)((Integer.parseInt(h.get(no).toString())+1)));
else
h.put(no, 1);
}
public static void main(String[] args) {
for(int i=0;i<1000;i++)
add(getNos());
for(int c=1;c<7;c++)
System.out.println(c+"的出现频率是:"+Integer.parseInt(h.get(c).toString())/10.00+"%");
}
}

import java.util.*;
class MyRandom{

public void randomTest(){
Random rand=new Random();
ArrayList a=new ArrayList();
ArrayList b=new ArrayList();
ArrayList c=new ArrayList();
ArrayList d=new ArrayList();
ArrayList e=new ArrayList();
ArrayList f=new ArrayList();
ArrayList g=new ArrayList();
for(int i=0;i<1000;i++){
int MyInt=rand.nextInt(6)+1;
if(MyInt==0){
a.add(i);
}
if(MyInt==1){
b.add(i);
}
if(MyInt==2){
c.add(i);
}
if(MyInt==3){
d.add(i);
}
if(MyInt==4){
e.add(i);
}
if(MyInt==5){
f.add(i);
}
if(MyInt==6){
g.add(i);
}
}
System.out.println("1的概率是:"+b.size()*0.1);
System.out.println("2的概率是:"+c.size()*0.1);
System.out.println("3的概率是:"+d.size()*0.1);
System.out.println("4的概率是:"+e.size()*0.1);
System.out.println("5的概率是:"+f.size()*0.1);
System.out.println("6的概率是:"+g.size()*0.1);
}
}
public class Test{
public static void main(String args[ ]) {
MyRandom ran=new MyRandom();
ran.randomTest();
}
}

  • 缂栧啓JAVA绋嬪簭,鐢熸垚100涓1鍒6涔嬮棿鐨勯殢鏈烘暟,缁熻1鍒6姣忎釜鏁板嚭鐜扮殑姒傜巼
    绛旓細public static void main(String[] args) { // TODO Auto-generated method stub int aa[]=new int[100];int bb[]=new int[6];for(int i=0;i<100;i++){ aa[i]=(int)(Math.random()*6+1);if(i<6){ bb[i]=0;}//if } for(int j=0;j<6;j++){ for(int k=0;k<100...
  • java绋嬪簭:缂栧啓鐢熸垚100涓1-6涔嬮棿鐨勯殢鏈烘暟,缁熻1鈥6姣忎釜鍑虹幇鐨勬鐜,鑿 ...
    绛旓細1.鐢ㄥ唴缃柟娉昅ath.random()浜х敓涓涓殢鏈烘暟浠嬩簬0锝1銆2.寮哄埗杞寲涓篿nt绫诲瀷锛屾牴鎹甶nt绫诲瀷鐨勭壒鐐癸紝杩欎釜鏁版槸0锝5涔嬮棿鐨勬暣鏁般3.寰楀埌鐨勬暟鍔1锛岃繖鏍疯繖涓暟灏辨槸浠嬩簬1锝6鐨勬暣鏁帮紝骞朵笖鏄殢鏈虹殑銆4.灏嗕粙浜1锝6涔嬮棿鐨勮繖涓暣鏁拌祴鍊肩粰randomNum 5.锛堥噸鐐癸級probability鏄釜鏁扮粍锛岃繖涓▼搴忕殑绠楁硶灏辨槸锛氬埄鐢╬robabil...
  • Java缂栫▼鐢熸垚100涓1~6涔嬮棿鐨勯殢鏈烘暟,缁熻1~6姣忎釜鏁板嚭鐜扮殑姒傜巼;_鐧惧害...
    绛旓細1 .Random鐨勬柟娉,鐢熸垚鐨勯殢鏈烘暟 Random r= new Random();int num1 = r.nextInt(6)+1;//r.next(6)鐢熸垚鐨勬槸0~5涔嬮棿鐨勬暟瀛,闇瑕+1,鎵嶆槸[1~6]涔嬮棿鐨勬暟瀛2. Math鐨勬柟娉,杩涜闅忔満鏁扮殑鐢熸垚 int num = (int) (Math.random() * 6) + 1;//(int) (Math.random() * 6) 鐢熸垚鐨勬槸0~...
  • JAVA鎬庢牱鐢熸垚1-100鐨勬湁椤哄簭鐨勬暟瀛楅泦鍚堝(1,2,3,4...100)
    绛旓細鍙互鐢Java8鐨凷tream鏉ュ府鍔╃敓鎴愰泦鍚堬紝涓句緥濡備笅锛歱ublic static void main(String[] args) { // 璧峰鏁板瓧 int start = 1; // 鐢熸垚鏁板瓧鐨勪釜鏁 int end = 100; // 鐢熸垚1,2,3,4,5...100 List<Integer> list = Stream.iterate(start, item -> item+1).limit(end).coll...
  • 鍏充簬Java閲浜х敓1-6闅忔満鏁扮殑鏂规硶
    绛旓細鐢java.util.Random 绫绘瘮杈冨ソ鐢≧andom r=new Random();int i=r.nextInt(6)+1;鐢熸垚1鍒6鐨勬暟瀛楀簲璇ユ満鐜囨瘮杈冪浉绛夛紱(int)(Math.random()*10锛%6+1浜х敓0鍒9鍐呯殑鏁存暟鍐 寰楀埌1锛2锛3锛4鐨勬鐜囧ぇ浜涘洜涓(int)(Math.random()*10锛%寰楀埌鐨勬暟鏄粠0鍒9锛0%6+1=1.銆傘傘5%6+1=6鈥︹6%6+1...
  • 鍏充簬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鐨...
  • 璇风敤JAVA缂涓绋嬪簭100涓汉鍥存垚涓涓渾鍦堜粠缂栧彿1寮濮嬫姤鏁板埌18鍙锋椂璇ヤ汉...
    绛旓細public static void main(String args[]){ int iNumber = 0;StringBuffer sID = new StringBuffer();sID.append("Person ID is :");for(int i=0 ; i<100 ; i++){ iNumber ++;if (iNumber == 18) { iNumber = 0;continue;} if (i >0){ sID.append(",");} sID.append(i...
  • 闅忔満鐢熸垚涓鐧句釜1鍒100鐨勬暣鏁,鑰屼笖涓鐧句釜鏁颁笉鑳介噸澶嶇殑,鐢↗avaBean鎴Java...
    绛旓細import java.util.Vector;/ author songml 闅忔満鐢熸垚涓鐧句釜1鍒100鐨勬暣鏁帮紝鑰屼笖涓鐧句釜鏁颁笉鑳介噸澶 / public class Random100Test { / param args / public static void main(String[] args) { int[] a = new int[100];a = initHun();for (int i =0 ; i < 100; i ++) { System.out...
  • 鐢java鍐 闅忔満鐢熸垚100涓澶у啓瀛楁瘝鍜100涓竴浣嶆暟,姣忚鎵撳嵃10涓暟銆傘傛眰...
    绛旓細for(int i = 0 ; i < 100; i++){ stringInt = stringInt + ""+ran.nextInt(10);} //鐢熸垚100涓澶у啓瀛楁瘝锛屽苟涓旇祴浜堝瓧绗︿覆stringChar for(int j = 0; j < 100; j++){ stringChar = stringChar + alphabet[ran.nextInt(26)];} System.out.println("===鐢熸垚鐨勯殢鏈轰竴浣嶆暟===");...
  • 杈撳嚭1鍒100杩100涓鏁(鍒嗗埆鐢╢or,while,do_while瀹炵幇)鐨java浠g爜
    绛旓細public static void main(String[] args){ for (int i = 1; i <= 100; i++){ System.out.println(i);} int j=1;while (j<=100){ System.out.println(j);j++;} int k=1;do { System.out.println(k);k++;} while (k<=100);} ...
  • 扩展阅读:java入门编程大概多少钱 ... java编程常用软件 ... java编程零基础入门 ... java编程100例全集 ... 学java一般能干什么 ... java基础题库100题 ... java编程经典100题 ... java实现1到100的求和 ... 初学编程100个代码java ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网