Due: November 13, 2019
Points: 100
The file “atomic_weights.txt” contains lines with three fields separated by tabs. The first field is the atomic weight, the second field is the symbol for the element, and the third field is the name of the element (which you can ignore for this problem).
We will proceed in stages, to make life easier. Remember, if this seems overwhelming, take some deep breaths and do something relaxing — take a walk, read, work on your hobby, …
A good way to check your program is to have it print out each atom’s symbol and the number that follows it, if any.
Hint: Element symbols are either 1 or 2 letters. The first letter is always capitalized; if there is a second letter, it is always lower case. So “HO” is a hydrogen atom (H) and an oxygen atom (O), and “Ho” is the symbol for holmium. Similarly, “SN” is a sulfur atom (S) and a nitrogen atom (N), and “Sn” is the symbol for tin. Similarly, if no number follows an element’s name, treat it as 1.
Your output is to look like this (input is in red).
Chemical composition? C2H5OH↵ The atomic weight of C2H5OH is 46.08 Chemical composition? H2O↵ The atomic weight of H2O is 18.02 Chemical composition? HO↵ The atomic weight of HO is 17.01 Chemical composition? Ho↵ The atomic weight of Ho is 164.93 Chemical composition? SN3↵ The atomic weight of SN3 is 74.1 Chemical composition? Sn3↵ The atomic weight of Sn3 is 356.13 Chemical composition? control-D
To turn in: Please call your program chem.py and submit it to Canvas
Now, breathe deeply and calm down. We will do this in steps!
>>> hasduplicates([1, 2, 3, 4, 5, 5, 2])↵ True >>> hasduplicates([1, 2, 3, 4, 5, 6, 7])↵ False
Hint: To generate a random number between a and b inclusive, put
import randomat the top of the program, and then call the function random.randint(a, b).
For 2 people, the probability of 2 birthdays is 0.00220 For 3 people, the probability of 2 birthdays is 0.00880 For 4 people, the probability of 2 birthdays is 0.01680 For 5 people, the probability of 2 birthdays is 0.02940 For 6 people, the probability of 2 birthdays is 0.03940 For 7 people, the probability of 2 birthdays is 0.05900 For 8 people, the probability of 2 birthdays is 0.06840 For 9 people, the probability of 2 birthdays is 0.09700 For 10 people, the probability of 2 birthdays is 0.12360
How many people are needed so that the probability of two of them with a birthday in common is over 0.9? How many are needed such that the probability of two of them having the same birthday is at least 0.5? Put these answers into a comment at the head of the file.
Hint: Don’t be surprised if your probabilities are slightly different than the ones shown in the sample output. As randomness is involved, it is very unlikely your numbers will match the ones shown here.
To turn in: Please call your program bday.py and submit it to Canvas
|
MHI 289I, Programming for Health Informatics Version of November 3, 2020 at 9:55AM
|
You can also obtain a PDF version of this. |