CS 115 Lab 3 Pendulum Calculations (Individual)


50 points

Due Date: September 17, Sunday, midnight

Educational goals of this lab - verify that every student can

Submit your file with this link. Use the Lab 3 and "Code" menu choices.

INSTRUCTIONS:

A pendulum is a weight suspended from a pivot so that it can swing freely. When a pendulum moves back and forth (oscillates), it takes a certain amount of time to move from the highest point on the left to the highest point on the right. This time is called its period. Pendulums have been used for scientific research since the 1600's.

References: Wikipedia page on Pendulum
pendulum period calculator

Test Plan (12 points) Make sure your program gives these results. Part of the grading process will be to run your program with these cases. Every test case that your program gives the correct answer for is worth 4 points.

The input is the length of the pendulum (in meters). The expected outputs are the period (time in minutes and seconds that the pendulum takes to swing back and forth) on three different planets, the Earth, Mars and Jupiter.
DescriptionInputExpected Outputs
Normal case 2000 min,28.385 sec, 0 min,46.032 sec, 0 min,18.48 sec
Boundary case, 0 0 min, 0 sec, 0 min, 0 sec, 0 min, 0 sec
Error case, length < 0 -5 0 min,2.007 sec, 0 min,3.255 sec, 0 min,1.307 sec

Sample Run:

Period of a pendulum

How long is the pendulum (m)? 200

The period is 28.385 seconds
or 0.0 minutes and 28.385 seconds on Earth

The period is 46.032 seconds
or 0.0 minutes and 46.032 seconds on Mars

The period is 18.48 seconds
or 0.0 minutes and 18.48 seconds on Jupiter

Another Sample Run:


Period of a pendulum

How long is the pendulum (m)? 3100

The period is 111.75 seconds
or 1.0 minutes and 51.75 seconds on Earth

The period is 181.227 seconds
or 3.0 minutes and 1.227 seconds on Mars

The period is 72.756 seconds
or 1.0 minutes and 12.756 seconds on Jupiter

Another Sample Run:

Period of a pendulum

How long is the pendulum (m)? -5
illegal length, length set to 1

The period is 2.007 seconds
or 0.0 minutes and 2.007 seconds on Earth

The period is 3.255 seconds
or 0.0 minutes and 3.255 seconds on Mars

The period is 1.307 seconds
or 0.0 minutes and 1.307 seconds on Jupiter

Design given

# supply program prolog  - fill this in!
#  include purpose, pre-conditions (inputs) and post-conditions (outputs)
    # gravity = 9.8 m/sec^2 on Earth
    # gravity = 3.7263 m/sec^2 on Mars
    # gravity = 23.12 m/sec^2 on Jupiter
#  main function
    # 1. Display introductory message
    # 2. get input from user of pendulum length
    # 3. if length is negative
    #         give message, set length to 1
    # 4. set gravity to Earth's value
    # 5. calculate the period for that length
    # 6. output the result in seconds and minutes and seconds
    # 7. set gravity to Mars' value
    # 8. calculate the period for that length
    # 9. output the result in seconds and minutes and seconds
    # 10. set gravity to Jupiter's value
    # 11. calculate the period for that length
    # 12. output the result in seconds and minutes and seconds

The formula for the period of a pendulum (seconds) given the length of the pendulum (meters) and the acceleration due to gravity (meters per second squared) is .

Implement the design (38 points) Individually write a Python program to implement the design. Write your Python code between the commented lines of the design. Make sure you eliminate any syntax and semantics errors. Here is where test cases come in handy! Verify that it does come out with the correct answers.

There are some specifications about how your program should be written.

Remember to submit your program source (pendulum.py) with the link at the top of the page.