これは、2 つの 6 面サイコロが投げられることをシミュレートし、結果を知っている配列の要素に +1 を追加することになっています。例: a[4] は、ロールされた 4 の数を保持します。なんらかの理由で、何回ロールしても、配列内のすべての要素に対して 1 が返されます。すなわち: (a[2] = 1、a[3] = 1、a[4] = 1など)
#include <iostream>
#include <cmath>
#include <cstdlib>
#include <ctime>
using namespace std;
int throwDice() // generates random number ranging 2-12
{
int x = (rand() % 6) + 1;
int p = (rand() % 6) + 1;
return x + p;
}
int main()
{
srand (time(NULL));
int y;
cout << "Roll dice how many times?" << endl;
cin >> y;
int a2[12]; // initializes and declares elements a[2] - a[12] with value 0
for (int i = 2; i <= 12; i++)
a2[i] = 0;
for (int i = 0; i <= y; i++) // runs random number generator, adds +1 to that element
{
a2[throwDice()]++;
}
for (int i = 2; i <= 12; i++) // prints how many results per element
cout << i << " = " << throwDice[i] << endl;
system("pause");
}