Trying to make a dice roller for an assignment using 1d and 2d arrays for an assignment for CS and ran into a problem
What I Have so far is this (and yes, i know the boolean structure is bad):
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <iomanip>
using namespace std;
int main()
{
int g[5][5] = {{}};
int d[11] = {};
int die1;
int die2;
srand(time(0));
for ( int roll = 1; roll <= 36000; ++roll )
{
die1 = 1 + rand() % 6;
die2 = 1 + rand() % 6;
if (die1 == 1 && (die2 == 1))
g[0][0] += 1;
if (die1 == 1 && die2 == 2)
g[0][1] += 1;
if (die1 == 1 && die2 == 3)
g[0][2] += 1;
if (die1 == 1 && die2 == 4)
g[0][3] += 1;
if (die1 == 1 && die2 == 5)
g[0][4] += 1;
if (die1 == 1 && die2 == 6)
g[0][5] += 1;
if (die1 == 2 && die2 == 1)
g[1][0] += 1;
if (die1 == 2 && die2 == 2)
g[1][1] += 1;
if (die1 == 2 && die2 == 3)
g[1][2] += 1;
if (die1 == 2 && die2 == 4)
g[1][3] += 1;
if (die1 == 2 && die2 == 5)
g[1][4] += 1;
if (die1 == 2 && die2 == 6)
g[1][5] += 1;
if (die1 == 3 && die2 == 1)
g[2][0] += 1;
if (die1 == 3 && die2 == 2)
g[2][1] += 1;
if (die1 == 3 && die2 == 3)
g[2][2] += 1;
if (die1 == 3 && die2 == 4)
g[2][3] += 1;
if (die1 == 3 && die2 == 5)
g[2][4] += 1;
if (die1 == 3 && die2 == 6)
g[2][5] += 1;
if (die1 == 4 && die2 == 1)
g[3][0] += 1;
if (die1 == 4 && die2 == 2)
g[3][1] += 1;
if (die1 == 4 && die2 == 3)
g[3][2] += 1;
if (die1 == 4 && die2 == 4)
g[3][3] += 1;
if (die1 == 4 && die2 == 5)
g[3][4] += 1;
if (die1 == 4 && die2 == 6)
g[3][5] += 1;
if (die1 == 5 && die2 == 1)
g[4][0] += 1;
if (die1 == 5 && die2 == 2)
g[4][1] += 1;
if (die1 == 5 && die2 == 3)
g[4][2] += 1;
if (die1 == 5 && die2 == 4)
g[4][3] += 1;
if (die1 == 5 && die2 == 5)
g[4][4] += 1;
if (die1 == 5 && die2 == 6)
g[4][5] += 1;
if (die1 == 6 && die2 == 1)
g[5][0] += 1;
if (die1 == 6 && die2 == 2)
g[5][1] += 1;
if (die1 == 6 && die2 == 3)
g[5][2] += 1;
if (die1 == 6 && die2 == 4)
g[5][3] += 1;
if (die1 == 6 && die2 == 5)
g[5][4] += 1;
if (die1 == 6 && die2 == 6)
g[5][5] += 1;
}
d[1] = g[0][0];
d[2] = g[1][0] + g[0][1];
d[3] = g[2][0] + g[0][2] + g[1][1];
d[4] = g[3]{0} + g[0][3] + g[1][2] + g[2][1];
d[5] = g[4][0] + g[0][4] + g[2][2] + g[3][1] + g[1][3];
d[6] = g[5][0] + g[0][5] + g[4][1] + g[1][4] + g[3][2] + g[2][3];
tried to compile with gnu and got this error on where it begins d[4] = … at the bottom.
error: invalid conversion from int* to int [-fpermissive]
any help would be appreciated, i really need to get this assignment done… Thx
It may be a typo but are the braces in the following line correct (bolded for clarity)?
Should the line be?