Name: ____________________________________________________ Alpha: _____________________

1. [30pts] Complete the program p1.cpp by writing the "main()" function, so that the program operates as shown below. You can use the function `lenUnitCF(fromUnit, toUnit)` I've already defined, which will be useful!
Example Runs of the Program: (user input in red!)
```~/\$ ./p1
convert to kilometers 45 miles + 3987 feet ;
73.6357 kilometers
~/\$ ./p1
convert to inches 2354 millimeters + 0.00022 nautical-miles ;
108.718 inches
~/\$ ./p1
convert to nautical-miles 2 miles + 2 kilometers ;
2.81786 nautical-miles
~/\$ ./p1
convert to light-years 1234 miles + 5678 kilometers ;
8.10095e-10 light-years```
2. [30pts] Complete the program p2.cpp by writing the prototype and definition for the "harm(n)" function which computes the sum of the first n terms in the harmonic series, i.e. it computes 1/1 + 1/2 + 1/3 + 1/4 + ... + 1/n.
Example Runs of the Program: (user input in red!)
```~/\$ ./p2
Enter x: 2.5
the 7th harmonic number is 2.59286, which is the first greater than 2.5
~/\$ ./p2
Enter x: 3.25
the 14th harmonic number is 3.25156, which is the first greater than 3.25
~/\$ ./p2
Enter x: 3.5
the 19th harmonic number is 3.54774, which is the first greater than 3.5
~/\$ ./p2
Enter x: 9.75
the 9631th harmonic number is 9.75001, which is the first greater than 9.75```
3. [40pts] Program p3.cpp is a complete functioning program. Here it is in action:
```~/\$ ./p3
Enter first time: 3:12:42
Enter second time: 4:06:19
Ellapsed time is 3217 seconds```
This program uses no functions. Pull out repeated code into one or more functions in order to simplify the program. The new program needs to give the same results as before!
Turn In: A screen capture of a terminal window showing all three programs running on the sample inputs from above, and a codeprint printout of the source code for the three programs. Note that you can print all three as a single pdf file by listing all the files in a single code-print command:
`codeprint p1.cpp p2.cpp p3.cpp`
... which should also save you some paper.