Oct-27-2018, 02:51 AM
Hello all! And thanks for taking the time to view this thread. THIS IS A HOMEWORK ASSIGNMENT. Just so y'all know I'm pretty new at this, and I want to master it. So this is my assignment:
Rewrite the grades with functions program from the previous chapter making sure you maintain your computegrade function that takes a score as its parameter and returns a grade as a string. Update that program if needed based on the feedback I gave you in D2L to make sure you have both a parameter and a return value.
Add the ability for the user to run this program over and over until they type some sort of terminal statment such as 'quit.' You may use your own creativity with your input and output statements, but be sure you are communicating what is expected to your user.
Don't forget your comments including name/date/purpose and inline comments.
Sample input/output:
Score Grade
>= 0.9 A
>= 0.8 B
>= 0.7 C
>= 0.6 D
< 0.6 F
Enter score or type 'Quit' to exit: 0.95
A
Enter score or type 'Quit' to exit: perfect
Bad score
Enter score or type 'Quit' to exit: 10.0
Bad score
Enter score or type 'Quit' to exit: 0.75
C
Enter score or type 'Quit' to exit: 0.5
F
Enter score or type 'Quit' to exit: Quit
Thanks for using the grade calculation program!
Run the program repeatedly to test the various different values for input.
Basically we are learning about while loops and adding them to previous concepts we've learned.
Here is my code:
Traceback (most recent call last):
File "/tmp/sessions/eaf64abee3b59bbe/main.py", line 62, in <module>
print(computegrade(score))
File "/tmp/sessions/eaf64abee3b59bbe/main.py", line 18, in computegrade
if float(score) > 1.0:
ValueError: could not convert string to float: 'Quit'
Also, when I type in numbers between 1.0 and 0.0, I will get the correct grade for the first number, but not for the second number.
Example:
Enter score or type 'Quit' to exit: .9
A
Enter score or type 'Quit' to exit: .3
A
I seriously don't know what to do to fix these things, and I'm starting to think the wall would look nice with a computer sticking out of it. I hope this is enough information. And I understand y'all are not here to do my homework. I don't want y'all to, I just need help.
Rewrite the grades with functions program from the previous chapter making sure you maintain your computegrade function that takes a score as its parameter and returns a grade as a string. Update that program if needed based on the feedback I gave you in D2L to make sure you have both a parameter and a return value.
Add the ability for the user to run this program over and over until they type some sort of terminal statment such as 'quit.' You may use your own creativity with your input and output statements, but be sure you are communicating what is expected to your user.
Don't forget your comments including name/date/purpose and inline comments.
Sample input/output:
Score Grade
>= 0.9 A
>= 0.8 B
>= 0.7 C
>= 0.6 D
< 0.6 F
Enter score or type 'Quit' to exit: 0.95
A
Enter score or type 'Quit' to exit: perfect
Bad score
Enter score or type 'Quit' to exit: 10.0
Bad score
Enter score or type 'Quit' to exit: 0.75
C
Enter score or type 'Quit' to exit: 0.5
F
Enter score or type 'Quit' to exit: Quit
Thanks for using the grade calculation program!
Run the program repeatedly to test the various different values for input.
Basically we are learning about while loops and adding them to previous concepts we've learned.
Here is my code:
# Samuel Snelling Assignment 9 10/21/18 # if letters are entered instead of numbers, #program will send "Bad Score" to user and # ask user to "Enter score or type 'Quit' to exit". try: score = input("Enter score or type 'Quit' to exit: ") except: print("Bad score.") score = input("Enter score or type 'Quit' to exit: ") def computegrade(score): while True: # if a number is entered that is larger than 1.0, program will # send "Bad Score" to user and ask the user "Enter score or type # 'Quit' to end program". if float(score) > 1.0: print("Bad score.") score = input("Enter score or type 'Quit' to exit: ") # if number entered is equal to 1.0 or in between 1.0 and 0.9 it # will print "A" elif float(score) == 1.0 or float(score) >= 0.9: grade = ("A") print("A") score = input("Enter score or type 'Quit' to exit: ") # if number entered is equal to 0.89 or in between 0.89 and 0.8 it # will print "B" elif float(score) == 0.89 or float(score) >= 0.8: grade = ("B") print("B") score = input("Enter score or type 'Quit' to exit: ") # if number entered is equal to 0.79 or in between 0.79 and 0.7 it # will print "C" elif float(score) == 0.79 or float(score) >= 0.7 : grade = ("C") print("C") score = input("Enter score or type 'Quit' to exit: ") # if number entered is equal to 0.69 or in between 0.69 and 0.6 it # will print "D" elif float(score) == 0.69 or float(score) >= 0.6: grade = ("D") print("D") score = input("Enter score or type 'Quit' to exit: ") # if number entered is less than 0.6 it will print "F" elif float(score) < 0.6: grade = ("F") print("F") score = input("Enter score or type 'Quit' to exit: ") # if "Quit" is entered by user, # "Thanks for using the grade calculation program!" will print and # end the program. if score == "Quit": print("Thanks for using the grade calculation program!") quit() return grade print(computegrade(score))Here is an error I keep getting:
Traceback (most recent call last):
File "/tmp/sessions/eaf64abee3b59bbe/main.py", line 62, in <module>
print(computegrade(score))
File "/tmp/sessions/eaf64abee3b59bbe/main.py", line 18, in computegrade
if float(score) > 1.0:
ValueError: could not convert string to float: 'Quit'
Also, when I type in numbers between 1.0 and 0.0, I will get the correct grade for the first number, but not for the second number.
Example:
Enter score or type 'Quit' to exit: .9
A
Enter score or type 'Quit' to exit: .3
A
I seriously don't know what to do to fix these things, and I'm starting to think the wall would look nice with a computer sticking out of it. I hope this is enough information. And I understand y'all are not here to do my homework. I don't want y'all to, I just need help.