输出100个1~6的随机整数,并求出每个数出现的概率
1.if else语句控制的形式
/** *如果要生成随机整数就要知道Java中生成随机整数的代码是啥 *要生成n~m其中随机整数有两种方式 *1.int i=(int)(Math.random()*m+n); *2.int i=(int)(Math.random()*(m-n+1)+n); */ public class RandomNember { public static void main(String[] args) { System.out.println("生成100个1~6的随机数字为:"); int a,b,c,d,e,f,n; n=0; a=0; b=0; c=0; d=0; e=0; f=0; for(int i=1;i<=100;i++) { int num=(int)(Math.random()*(6-1+1)+1); if(num==1) { a++; System.out.print(num+"\t"); n++; } else if(num==2) { b++; System.out.print(num+"\t"); n++; } else if(num==3) { c++; System.out.print(num+"\t"); n++; } else if(num==4) { d++; System.out.print(num+"\t"); n++; } else if(num==5) { e++; System.out.print(num+"\t"); n++; } else if(num==6) { f++; System.out.print(num+"\t"); n++; } if(n%10==0) { System.out.println(); //这个输出语句是为了让每一行有十个输出的数 } } System.out.println("1出现的概率为"+a+"%"); System.out.println("2出现的概率为"+b+"%"); System.out.println("3出现的概率为"+c+"%"); System.out.println("4出现的概率为"+d+"%"); System.out.println("5出现的概率为"+e+"%"); System.out.println("6出现的概率为"+f+"%"); } }
2.还可以改写为switch语句的形式
public class RandomNember02 { public static void main(String[] args) { System.out.println("生成100个1~6的随机数字为:"); int a,b,c,d,e,f,n; n=0; a=0; b=0; c=0; d=0; e=0; f=0; for(int i=1;i<=100;i++) { int num=(int)(Math.random()*(6-1+1)+1); switch(num) { case 1: System.out.print(num+"\t"); a++; n++; break; case 2: System.out.print(num+"\t"); b++; n++; break; case 3: System.out.print(num+"\t"); c++; n++; break; case 4: System.out.print(num+"\t"); d++; n++; break; case 5: System.out.print(num+"\t"); e++; n++; break; case 6: System.out.print(num+"\t"); f++; n++; break; } if(n%10==0) { System.out.println(); } } System.out.println("1出现的概率为"+a+"%"); System.out.println("2出现的概率为"+b+"%"); System.out.println("3出现的概率为"+c+"%"); System.out.println("4出现的概率为"+d+"%"); System.out.println("5出现的概率为"+e+"%"); System.out.println("6出现的概率为"+f+"%"); } }
运行结果如下:
因为生成的是随机数,所以每次运行生成的概率都不同