Contents

  1. birthyear.py
  2. evenorodd.py
  3. speedingticket.py

birthyear.py 1/3

[
top][prev][next]
# This program calculates your birthyear, 
# given your age and the current year.
# Sara Sprenkle

print("This program determines your birth year")
print("given your age and current year")
print()

age = eval(input("Enter your age: "))

if age > 120:
    print("Don't be ridiculous, you can't be that old.")
else:
    currentYear = eval(input("Enter the current year: "))
    birthyear = currentYear - age
    print()
    print("You were either born in", birthyear, end='')
    print("or", birthyear-1)
print("Thank you.  Come again.")


evenorodd.py 2/3

[
top][prev][next]
# This program determines whether a number is even or odd
# Sara Sprenkle

x = eval(input("Enter a number: "))

remainder = x%2

if remainder == 0:
	print(x, "is even")

if remainder == 1:
	print(x, "is odd")
    
# alternatively, we should use an "else" statement
# instead of the second if statement because it is more efficient.
# We are only doing one check of a condition.

#if remainder == 0:
#	print(x, "is even")
#else:
#	print(x, "is odd")

speedingticket.py 3/3

[
top][prev][next]
# Any speed clocked over the limit results in a fine of at least $50, plus $5
# for each mph over the limit, plus a penalty of $200 for any speed over 90mph.
#
# Input: speed limit and the clocked speed
# Output: either (a) that the clocked speed was under the limit or 
# (b) the appropriate fine
# CSCI 111

import test

def calculateFine(speedlimit, clockedspeed):
    """
    To be completed
    """
    pass
    
    
def testCalculateFine():
    """
    The test cases we discussed in class
    """
    # excessive speeding
    test.testEqual( calculateFine(50, 100), 500)
    # not-quite excessive speeding
    test.testEqual( calculateFine(65, 90), 125)
    # "typical" speeding
    test.testEqual( calculateFine(45, 50), 75)
    # not speeding
    test.testEqual( calculateFine(70, 65), 0)
    # not speeding, same as speed limit
    test.testEqual( calculateFine(70, 70), 0)
    # not speeding over 90
    test.testEqual( calculateFine(95, 95), 0)
    
    
testCalculateFine()

Generated by GNU Enscript 1.6.6.