我是编程的新手,几周前才开始编程。我在这个程序中遇到的问题是,在我输入品脱数量之后,在第7次之后,它只给我一个空白行,没有错误,但它也没有移动到程序的其余部分。
我想知道需要做什么,或者当这种情况发生时意味着什么?
#This program will assist in calculating average pints of blood collected daily for a red cross blood drive
#It will also display the highest value, and lowest value
def main():
endProgram = 'no'
print
while endProgram == 'no':
print
totalPints = 0
averagePints = 0
highPints = 0
lowPints = 0
pints = [0] * 7
pints = getPints(pints)
totalPints = getTotal(pints, totalPints)
averagePints = getAverage(totalPints, averagePints)
highPints = getHigh(pints, highPints)
lowPints = getLow(pints, lowPints)
displayInfo(averagePints, highPints, lowPints)
endProgram = raw_input('Do you want to end program? (Enter yes or no): ')
while not (endProgram == 'yes' or endProgram == 'no'):
print 'Please enter a yes or no'
endProgram = raw_input('Do you want to end program? (Enter yes or no): ')
def getPints(pints):
counter = 0
while counter < 7:
pints[counter] = input('Enter pints collected: ')
counter = counter + 1
return pints
def getTotal(pints, totalPints):
counter = 0
while counter < 7:
totalPints = totalPints + pints[counter]
counter = counter + 1
return totalPints
def getAverage(totalPints, averagePints):
averagePints = totalPints / 7
return averagePints
def getHigh(pints,highPints):
highPints = pints[0]
counter = 1
while counter < 7:
if pints[counter] > highPints:
highPints = pints[counter]
counter = counter + 1
return highPints
def getLow(pints, lowPints):
lowPints = pints[0]
counter = 1
while counter < 7:
if pints[counter] < lowPints:
lowPints = pints[counter]
counter = counter + 1
return lowPints
def displayInfo(averagePints, highPints, lowPints):
print 'The average pints of donated blood is: ', averagePints
print 'The highest pints of blood donated is: ', highPints
print 'The lowest pints of blood donated is: ', lowPints
main()