Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

PYTHON HELP PLS: (1) 6 points. Revise your program for the molecular weight of a chemical compound of hydrogen, carbon, and oxygen, so that it

PYTHON HELP PLS:

(1) 6 points. Revise your program for the molecular weight of a chemical compound of hydrogen, carbon, and oxygen, so that it can take as user input a chemical formula of the form C2H5OH for ethyl alcohol, COOHC6H4OCOCH3 or C9H8O4 for aspirin, CH3CH2CH2CH2CH2CH2CH2CH3 or C8H18 for octane, and so forth. You should write an algorithm to analyse an input string of this form, using string indexing as in section 3.1 to look at individual characters in the string. You should accumulate the total counts of hydrogen, carbon, and oxygen in the compound, and then use the formula in your previous section 2.11 assignment to compute the molecular weight. I suggest you use list for these three counts, and increment the appropriate count as you process the input string. Be careful to deal with the case when there is no number following the letter, which means the implied number is just one, and the case, as for octane above, when the number after a letter has more than one digit.

Carbon = 12.0110

Oxygen = 15.9994

Hydrogen = 1.0079

The program should keep outputting the prompt "Enter a chemical formula, or just the enter key to quit: " for the chemical formula of a new compound, until the user presses only the enter key without a chemical formula, in which case the program should terminate. The molecular weights should be printed with exactly four digits after the decimal point (since the atomic weights from section 2.11 have four decimal places).

Below is my output for the four chemical formulas above. The user input will not appear in the output used by the zyBooks comparison tests when grading. There are also some hidden test cases.

Enter a chemical formula, or just the enter key to quit: C2H5OH

The molecular weight is 46.0688

Enter a chemical formula, or just the enter key to quit: COOHC6H4OCOCH3

The molecular weight is 180.1598

Enter a chemical formula, or just the enter key to quit: C9H8O4

The molecular weight is 180.1598

Enter a chemical formula, or just the enter key to quit: C8H18

The molecular weight is 114.2302

Enter a chemical formula, or enter key to quit:

(2) 3 points. Modify your program so that if the user enters an invalid formula, for example, one that contains other characters besides digits and C, H, and O, or begins with a digit, the program will print the line "Badly formed molecular formula; try again." and then the input prompt again. So a possible session might look like:

Enter a chemical formula, or just the enter key to quit: 14H

Badly formed molecular formula; try again.

Enter a chemical formula, or just the enter key to quit: h14

Badly formed molecular formula; try again.

Enter a chemical formula, or just the enter key to quit: H14

The molecular weight is 14.1106

Enter a chemical formula, or the enter key to quit:

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions

Question

5. Describe the relationship between history and identity.

Answered: 1 week ago