★
以亂數模擬兩顆骰子,每顆骰子點數介於1~6之間,
則兩顆點數合計有36種組合,點數和的分布則介於2~12之間,
其中,7出現可能最大,2,12出現可能最小.請以程式模擬兩顆骰子
丟擲3600次,並以一維陣列統計2~12的和出現分布情形.
將結果以如下6x6表格印出,看看每一格子組合
是否約略出現次數為100次.
1 2 3 4 5 6
+----------------- 註: 兩顆骰子點數共有6種組合會出現和為7,
1 | 2 3 4 5 6 7 因此一維陣列統計出來的7次數要除以7,
2 | 3 4 5 6 7 8 才放入二維表格6個7的位置當中;
3 | 4 5 6 7 8 9 其他,以此類推
4 | 5 6 7 8 9 10
5 | 6 7 8 9 10 11
6 | 7 8 9 10 11 12
○
public class dice
{
public static void main(String[] args)
{
int count=1;
int[] add = new int[13];
int[] r = new int[37];
int dice1,dice2,sum,c;
for(c=1;c<3600;c++)
{
dice1 = (int)(Math.random()*6+1);
dice2 = (int)(Math.random()*6+1);
sum = dice1+dice2;
if (sum==2)
add[2]++;
if (sum==3)
add[3]++;
if (sum==4)
add[4]++;
if (sum==5)
add[5]++;
if (sum==6)
add[6]++;
if (sum==7)
add[7]++;
if (sum==8)
add[8]++;
if (sum==9)
add[9]++;
if (sum==10)
add[10]++;
if (sum==11)
add[11]++;
if (sum==12)
add[12]++;
}
r[1]=add[2];
r[2]=add[3]/2;
r[7]=add[3]/2;
r[3]=add[4]/3;
r[8]=add[4]/3;
r[13]=add[4]/3;
r[4]=add[5]/4;
r[9]=add[5]/4;
r[14]=add[5]/4;
r[19]=add[5]/4;
r[5]=add[6]/5;
r[10]=add[6]/5;
r[15]=add[6]/5;
r[20]=add[6]/5;
r[25]=add[6]/5;
r[6]=add[7]/6;
r[11]=add[7]/6;
r[16]=add[7]/6;
r[21]=add[7]/6;
r[26]=add[7]/6;
r[31]=add[7]/6;
r[12]=add[8]/5;
r[17]=add[8]/5;
r[22]=add[8]/5;
r[27]=add[8]/5;
r[32]=add[8]/5;
r[18]=add[9]/4;
r[23]=add[9]/4;
r[28]=add[9]/4;
r[33]=add[9]/4;
r[24]=add[10]/3;
r[29]=add[10]/3;
r[34]=add[10]/3;
r[30]=add[11]/2;
r[35]=add[11]/2;
r[36]=add[12];
System.out.println(" 1 2 3 4 5 6");
System.out.println(" +----------------- ");
System.out.println("1|"+r[1]+" "+r[2]+" "+r[3]+" "+r[4]+" "+r[5]+" "+r[6]);
System.out.println("2|"+r[7]+" "+r[8]+" "+r[9]+" "+r[10]+" "+r[11]+" "+r[12]);
System.out.println("3|"+r[13]+" "+r[14]+" "+r[15]+" "+r[16]+" "+r[17]+" "+r[18]);
System.out.println("4|"+r[19]+" "+r[20]+" "+r[21]+" "+r[22]+" "+r[23]+" "+r[24]);
System.out.println("5|"+r[25]+" "+r[26]+" "+r[27]+" "+r[28]+" "+r[29]+" "+r[30]);
System.out.println("6|"+r[31]+" "+r[32]+" "+r[33]+" "+r[34]+" "+r[35]+" "+r[36]);
}
}
○
以亂數模擬兩顆骰子,每顆骰子點數介於1~6之間,
則兩顆點數合計有36種組合,點數和的分布則介於2~12之間,
其中,7出現可能最大,2,12出現可能最小.請以程式模擬兩顆骰子
丟擲3600次,並以一維陣列統計2~12的和出現分布情形.
將結果以如下6x6表格印出,看看每一格子組合
是否約略出現次數為100次.
1 2 3 4 5 6
+----------------- 註: 兩顆骰子點數共有6種組合會出現和為7,
1 | 2 3 4 5 6 7 因此一維陣列統計出來的7次數要除以7,
2 | 3 4 5 6 7 8 才放入二維表格6個7的位置當中;
3 | 4 5 6 7 8 9 其他,以此類推
4 | 5 6 7 8 9 10
5 | 6 7 8 9 10 11
6 | 7 8 9 10 11 12
○
public class dice
{
public static void main(String[] args)
{
int count=1;
int[] add = new int[13];
int[] r = new int[37];
int dice1,dice2,sum,c;
for(c=1;c<3600;c++)
{
dice1 = (int)(Math.random()*6+1);
dice2 = (int)(Math.random()*6+1);
sum = dice1+dice2;
if (sum==2)
add[2]++;
if (sum==3)
add[3]++;
if (sum==4)
add[4]++;
if (sum==5)
add[5]++;
if (sum==6)
add[6]++;
if (sum==7)
add[7]++;
if (sum==8)
add[8]++;
if (sum==9)
add[9]++;
if (sum==10)
add[10]++;
if (sum==11)
add[11]++;
if (sum==12)
add[12]++;
}
r[1]=add[2];
r[2]=add[3]/2;
r[7]=add[3]/2;
r[3]=add[4]/3;
r[8]=add[4]/3;
r[13]=add[4]/3;
r[4]=add[5]/4;
r[9]=add[5]/4;
r[14]=add[5]/4;
r[19]=add[5]/4;
r[5]=add[6]/5;
r[10]=add[6]/5;
r[15]=add[6]/5;
r[20]=add[6]/5;
r[25]=add[6]/5;
r[6]=add[7]/6;
r[11]=add[7]/6;
r[16]=add[7]/6;
r[21]=add[7]/6;
r[26]=add[7]/6;
r[31]=add[7]/6;
r[12]=add[8]/5;
r[17]=add[8]/5;
r[22]=add[8]/5;
r[27]=add[8]/5;
r[32]=add[8]/5;
r[18]=add[9]/4;
r[23]=add[9]/4;
r[28]=add[9]/4;
r[33]=add[9]/4;
r[24]=add[10]/3;
r[29]=add[10]/3;
r[34]=add[10]/3;
r[30]=add[11]/2;
r[35]=add[11]/2;
r[36]=add[12];
System.out.println(" 1 2 3 4 5 6");
System.out.println(" +----------------- ");
System.out.println("1|"+r[1]+" "+r[2]+" "+r[3]+" "+r[4]+" "+r[5]+" "+r[6]);
System.out.println("2|"+r[7]+" "+r[8]+" "+r[9]+" "+r[10]+" "+r[11]+" "+r[12]);
System.out.println("3|"+r[13]+" "+r[14]+" "+r[15]+" "+r[16]+" "+r[17]+" "+r[18]);
System.out.println("4|"+r[19]+" "+r[20]+" "+r[21]+" "+r[22]+" "+r[23]+" "+r[24]);
System.out.println("5|"+r[25]+" "+r[26]+" "+r[27]+" "+r[28]+" "+r[29]+" "+r[30]);
System.out.println("6|"+r[31]+" "+r[32]+" "+r[33]+" "+r[34]+" "+r[35]+" "+r[36]);
}
}
○
全站熱搜
留言列表