私は入力を受け取り、入力された数字をそれが成し遂げられるグレードと一緒に書き出すプログラムを書く必要があります。私のプログラムは動作しますが、明らかに私はローカル変数のみを使用することになっています。ローカル変数だけになるように変更する必要はありますか?以下の2つの変数は、私が現在グローバル変数として使用しているものです。グローバル変数なしでこれをどのように記述しますか?
# 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()
私はまだ、2つの独立した機能を持っていることになっています。
ここにコードを不変化してください。 – tdelaney