Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Question 1. Dice rolling: Write a program using c++ that simulates the rolling o

ID: 3749523 • Letter: Q

Question

Question 1.      Dice rolling:

Write a program using c++ that simulates the rolling of two dice. The sum of the two values should then be calculated. [Note: Each die can show an integer value from 1 to 6, so the sum of the two values will vary from 2 to 12, with 7 being the most frequent sum and 2 and 12 being the least frequent sums.] The following table shows the 36 possible combinations of the two dice. Your program should roll the two dice 36,000,000 times. Use a one-dimensional array to tally the numbers of times each possible sum appears. Print the results in a tabular format. Also determine if the totals are reasonable (i.e., there are six ways to roll a 7, so approximately one-sixth of all the rolls should be 7).

1

2

3

4

5

6

1

2

3

4

5

6

7

2

3

4

5

6

7

8

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

Question 2)    For each of the following, write C++ statements that perform the specified task. Assume that unsigned integers are stored in four bytes and that the starting address of the built-in array is at location 1002500 in memory.

a.      Declare an unsigned int built-in array values with five elements initialized to the even integers from 2 to 10. Assume that the constant size has been defined as 5.

b.      Declare a pointer vPtr that points to an object of type unsigned int.

c.       Use a for statement to display the elements of built-in array values using array subscript notation.

d.      Write two separate statements that assign the starting address of built-in array values to pointer variable vPtr.

e.      Use a for statement to display the elements of built-in array values using pointer/offset notation.

f.        Use a for statement to display the elements of built-in array values using pointer/offset notation with the built-in array’s name as the pointer.

g.      Use a for statement to display the elements of built-in array values by subscripting the pointer to the built-in array.

h.      Refer to the fifth element of values using array subscript notation, pointer/offset notation with the built-in array’s name as the pointer, pointer subscript notation and pointer/offset notation.

i.        What address is referenced by vPtr + 3? What value is stored at that location?

j.        Assuming that vPtr points to values[4], what address is referenced by vPtr -= 4? What value is stored at that location?

1

2

3

4

5

6

1

2

3

4

5

6

7

2

3

4

5

6

7

8

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

Explanation / Answer

Answer:

Code:

#include <bits/stdc++.h>
using namespace std;

int main()
{

const int arraysize = 13;

int counter[13], sum=0;
// init counter
for(int i=0; i<13; i++)
counter[i] = 0;

int die1;
int die2;

for ( int roll1 = 0; roll1 <=36000000; roll1++ ) {
die1 = 1 + rand() % 6;
die2 = 1 + rand() % 6;
counter[die1+die2]++;
}

cout<<"sum of Faces"<<setw(13)<<"Frequency"<<endl;

for(int face=2; face<arraysize;face++)
{
cout<<setw(7)<<face<<setw(13)<<counter[face]<<endl;
sum += counter[face];
}

cout << "sum: " << sum;

return 0;
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote