\[ \begin{align}\begin{aligned}\newcommand\blank{~\underline{\hspace{1.2cm}}~}\\% Bold symbols (vectors)
\newcommand\bs[1]{\mathbf{#1}}\\% Poor man's siunitx
\newcommand\unit[1]{\mathrm{#1}}
\newcommand\num[1]{#1}
\newcommand\qty[2]{#1~\unit{#2}}\\\newcommand\per{/}
\newcommand\squared{{}^2}
%
% Scale
\newcommand\milli{\unit{m}}
\newcommand\centi{\unit{c}}
\newcommand\kilo{\unit{k}}
\newcommand\mega{\unit{M}}
%
% Angle
\newcommand\radian{\unit{rad}}
\newcommand\degree{\unit{{}^\circ}}
%
% Time
\newcommand\second{\unit{s}}
%
% Distance
\newcommand\meter{\unit{m}}
\newcommand\m{\meter}
\newcommand\inch{\unit{in}}
\newcommand\feet{\unit{ft}}
\newcommand\mile{\unit{mi}}
\newcommand\mi{\mile}
%
% Volume
\newcommand\gallon{\unit{gal}}
%
% Mass
\newcommand\gram{\unit{g}}
\newcommand\g{\gram}
%
% Frequency
\newcommand\hertz{\unit{Hz}}
\newcommand\rpm{\unit{rpm}}
%
% Voltage
\newcommand\volt{\unit{V}}
\newcommand\V{\volt}
\newcommand\millivolt{\milli\volt}
\newcommand\mV{\milli\volt}
\newcommand\kilovolt{\kilo\volt}
\newcommand\kV{\kilo\volt}
%
% Current
\newcommand\ampere{\unit{A}}
\newcommand\A{\ampere}
\newcommand\milliampereA{\milli\ampere}
\newcommand\mA{\milli\ampere}
\newcommand\kiloampereA{\kilo\ampere}
\newcommand\kA{\kilo\ampere}
%
% Resistance
\newcommand\ohm{\Omega}
\newcommand\milliohm{\milli\ohm}
\newcommand\kiloohm{\kilo\ohm} % correct SI spelling
\newcommand\kilohm{\kilo\ohm} % "American" spelling used in siunitx
\newcommand\megaohm{\mega\ohm} % correct SI spelling
\newcommand\megohm{\mega\ohm} % "American" spelling used in siunitx
%
% Inductance
\newcommand\henry{\unit{H}}
\newcommand\H{\henry}
\newcommand\millihenry{\milli\henry}
\newcommand\mH{\milli\henry}
%
% Temperature
\newcommand\celsius{\unit{^{\circ}C}}
\newcommand\C{\unit{\celsius}}
\newcommand\fahrenheit{\unit{^{\circ}F}}
\newcommand\F{\unit{\fahrenheit}}
\newcommand\kelvin{\unit{\K}}
\newcommand\K{\unit{\kelvin}}\\% Power
\newcommand\watt{\unit{W}}
\newcommand\W{\watt}
\newcommand\milliwatt{\milli\watt}
\newcommand\mW{\milli\watt}
\newcommand\kilowatt{\kilo\watt}
\newcommand\kW{\kilo\watt}
%
% Torque
\newcommand\ozin{\unit{oz}\text{-}\unit{in}}
\newcommand\newtonmeter{\unit{N\text{-}m}}\end{aligned}\end{align} \]
Apr 16, 2025 | 225 words | 2 min read
7.2.3. Roll Analysis
Instructions
If you roll a pair of six-sided dice (\(2\)d\(6\)), the total of the roll can be
anywhere between \(2\) and \(12\) (inclusive). To simulate the roll of a single die,
write a function named roll_d6
that takes no arguments, and returns a
random integer between \(1\) and \(6\) (inclusive). Then write another function named
get_2d6_rolls
that uses your roll_d6
function to simulate
rolling two six sided dice multiple times. This function should take the
number of times to roll \(2\)d\(6\) as its argument, and return a list of the results
for each roll (each number in the list should be between \(2\) and \(12\)).
Then, in your main function, call your get_2d6_rolls
function to
simulate \(1,000,000\) rolls of a pair of dice.
Hint
You can use a number less than \(1,000,000\) while debugging to save time.
Use the list returned from this function call to calculate and print the percentage of rolls that
have each value between \(2\) and \(12\).
Sample Output
Ensure your program’s output matches the provided samples exactly.
This includes all characters, white space, and punctuation. In the
samples, user input is highlighted like
this for clarity, but your program should not highlight user
input in this way.
Sample Output
$ python3 roll_analysis_login.py
Roll Frequency
2 2.80%
3 5.51%
4 8.34%
5 11.10%
6 13.96%
7 16.67%
8 13.92%
9 11.11%
10 8.31%
11 5.51%
12 2.77%
Deliverables
Save your finished program as roll_analysis_login.py
,
replacing login
with your Purdue login. Then submit it along with
all the deliverables listed in
Table 7.3 below.