Je dois écrire un programme qui saisit et écrit le nombre entré avec le grade que ce serait. Mon programme fonctionne mais apparemment je ne suis supposé utiliser que des variables locales. Qu'est-ce que j'ai besoin de changer pour que ce ne soit que des variables locales? Les deux variables ci-dessous sont ce que j'utilise actuellement comme variables globales.Comment écrire ceci sans variables globales?
# This program takes intger inputs and provides a grade value for each number entered
number = 1
myNumbers = []
print("Please enter as many integer numbers as you would like. Enter -999 to exit loop")
# This function has the user input values and exit with a sentinel value -999
def getScores(number):
sentinelValue = -999
while(number != sentinelValue):
number = eval(input("Enter an integer: "))
if number > -1:
myNumbers.append(number)
print("Numbers entered: ")
print(myNumbers, "\n")
# This function prints out the values with the appropriate letter grade
def printScores():
print("Length of array = ", len(myNumbers))
for i in range(0, len(myNumbers)):
if myNumbers[i] >= 90:
print(myNumbers[i], "is an A")
if myNumbers[i] >= 80 and myNumbers[i] < 90:
print(myNumbers[i], "is a B")
if myNumbers[i] >= 70 and myNumbers[i] < 80:
print(myNumbers[i], "is a C")
if myNumbers[i] >= 60 and myNumbers[i] < 70:
print(myNumbers[i], "is a D")
if myNumbers[i] >= 0 and myNumbers[i] < 60:
print(myNumbers[i], "is an F")
# The main function is where we will call the other functions and print out the results
def main():
getScores(number)
printScores()
# Call the main
main()
Je suis toujours supposé avoir les deux fonctions séparées.
Afficher le code ici pour être immortalisé. – tdelaney