Assignment -
1. Dice rolling:
Write a program 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
|
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?