#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
int main()
{
int i;
int d1, d2, d3;
int a[16];
srand(time(NULL));
for(i = 0; i <= 15; i++)
a[i] = 0;
for(i = 0; i < 1000; i = i + 1)
{
d1 = rand() % 6 + 1;
d2 = rand() % 6 + 1;
d3 = rand() % 6 + 1;
++a[d1 + d2 + d3 - 3];
}
char asterisks[0x400];
memset(asterisks, '*', sizeof(asterisks));
for(i = 0; i <= 15; i = i + 1)
{
printf("%3d - ", i+3);
for(j=0;j<a[i];j++)
{
printf("%c ",'*');
}
printf("\n");
}
return 0;
}
更新了代码。
目标是有一个星号直方图来判断 3 个骰子掷出 1000 次的骰子掷数。它是计算 3 到 18 之间的和有多少组合。直方图输出应如下所示:
Frequency of Results for 3d6
3 - *
4 - **
5 - ****
6 - *******
7 - *********
8 - ***********
9 - ************
10 - ************
11 - *************
12 - **********
13 - *************
14 - ********
15 - ******
16 - ***
17 - ***
18 - **
这是我现在的输出:
3 - * *
4 - * * * * * * * * * * * * * * * * * * * *
5 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
6 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * *
7 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * *
8 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * *
9 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
10 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
11 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * *
12 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * *
13 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * *
14 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * *
15 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * * *
16 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
17 - * * * * * * * * *
18 - * * * * * * * *