Exercise 5.1: Write a program which repeatedly reads numbers until the user
enters "done". Once "done" is entered, print out the total, count, and average
of the numbers. If the user enters anything other than a number, detect their
mistake using try and except and print an error message and skip to the next
number.
Enter a number: 4
Enter a number: 5
Enter a number: bad data
Invalid input
Enter a number: 7
Enter a number: done
16 3 5.33333333333333
Python for Everybody: Exploring Data Using Python 3
by Charles R. Severance

 

# Loop Exercise#1

count = 0
sums = 0
avg = 0
while True :
    inp_num = input("Enter a number: ")

    try :
        inp_num = int(inp_num)
        count = count + 1
    except :
        if inp_num == "done":
            break
        print("invalid input !!!")
        continue

    sums = sums + inp_num
    avg = sums / count
print(sums, count, avg)
quit()

 

Exercise 4.7: Rewrite the grade program from previous chapter using a function
called computegrade that takes a score as its parameter and returns a grade as
a string.
Score    Grade
>= 0.9      A
>= 0.8      B
>= 0.7      C
>= 0.6      D
< 0.6      F
~~~
Enter score: 0.95
A
Enter score: perfect
Bad score
Enter score: 10.0
Bad score
Enter score: 0.75
C
Enter score: 0.5
F
Run the program repeatedly  to test the various, different values for input.
Python for Everybody: Exploring Data Using Python 3
by Charles R. Severance

 

 

def computegrade(score) :
    if score >= 0.0 and score <= 1.0 :
        if score >= 0.9 :
            return "A"
        elif score >= 0.8 :
            return "B"
        elif score >= 0.7 :
            return "C"
        elif score >= 0.6 :
            return "D"
        else:
            return "F"
    else:
        return "Bad Score"

score = input("Enter score: ")
try:
    score = float(score)
    print(computegrade(score))

except:
    print("BAD Score")

Exercise 4.6: Rewrite your pay computation with time-and-a-half for overtime
and create a function called computepay which takes two paramteters (hours and
rate).
Enter Hours: 45
Enter Rate: 10
Pay: 475.0
Python for Everybody: Exploring Data Using Python 3
by Charles R. Severance

 

 

def computepay(hours, rate):
    if hours <= 40 :
       return hours * rate
    else :
       return ((40 * rate) + ((hours - 40) * rate * 1.5))


hours = input("Enter Hours: ")
try:
    hours = float(hours)
    rate = input("Enter Rates: ")
    rate = float(rate)
    print("Pay: ", computepay(hours, rate))
except:
    print("Error!  please enter numeric input")

+ Recent posts