![]() |
|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
![]() ![]() |
|
主題工具 | 顯示模式 |
|
![]() |
#1 (permalink) |
管理員
![]() ![]() |
![]() #include "stdio.h"
#include "stdlib.h" #define random(num) (rand() % (num)) /* random 取亂數 */ #define randomize() srand((unsigned)time(NULL)) /* randomize 清除取亂數種子表 */ #define clrscr() system("CLS") /* 畫面清除 */ #define pause() system("PAUSE") /* 暫停畫面 */ /* dist[6] : given distribution of each number's appearances result[n] : simulation result n : rolling a dice n times */ void rolling(int dist[6], int result[][2], int n) { int i,c; randomize(); for(i=0;i<n;i++) { c=random(6); result[i][0]=i+1; result[i][1]=dist[c]; } } void print(int dist[6],int vals[][2], int len) { int i; int cnt[6]={0}; int index; /* for(i=0; i<6; i++) */ /* cnt[i]=0; */ clrscr(); printf("Rolling result : "); for(i=0;i<6;i++) printf("(%d) ",dist[i]); printf("\n"); for(i=0; i<len; i++) { printf("(%3d,%2d) ",vals[i][0],vals[i][1]); /* int index=vals[i][0]-1; */ index=vals[i][1]-1; cnt[index]++; } printf("\n"); for(i=0; i<6; i++) { printf("\tdice(%d) = %4.1f \n",i+1,(double)cnt[i]/len*100); } printf("\n"); pause(); } int main(){ const int n=100; int dices[n][2]; int dist1[] = {3,3,3,6,6,12}; int dist2[] = {6,3,6,1,1,12}; int dist3[] = {1,1,2,1,1,4}; srand(time(NULL)); rolling(dist1,dices,n); print(dist1,dices,n); rolling(dist2,dices,n); print(dist2,dices,n); rolling(dist3,dices,n); print(dist3,dices,n); } |
__________________ 在「專業主討論區」中的問題解決後,要記得按一下 ![]() 這是一種禮貌動作。 ![]() 一樣是在「專業主討論區」中發問,不管問題解決與否,都要回應別人的回答文喔。 不然搞 [斷頭文],只看不回應,下次被別人列入黑名單就不要怪人喔。 天線寶寶說再見啦~ ... 天線寶寶說再見啦~ 迪西:「再見~ 再見~」 『 Otaku Culture Party 』 關心您 ... ![]() |
|
![]() |
送花文章: 37855,
![]() |