def main():
section = 'A'
while section:
section = (input('What section are you inputing ticket numbers for? '))
if section in ('a', 'A') :
limit = 300
cost = 20
ticketSold = getTickets(section, limit)
sectionACost = calcIncome(ticketSold, cost)
elif section in ('b', 'B'):
limit = 500
cost = 15
ticketSold = getTickets(section, limit)
sectionBCost = calcIncome(ticketSold, cost)
elif section in ('c', 'C'):
limit = 200
cost = 10
ticketSold = getTickets(section, limit)
sectionBCost = calcIncome(ticketSold, cost)
displayTotals()
def getTickets(section, limit):
ticketSold = int(input('How many tickets were sold? '))
return int(ticketSold)
if ticketsValid(ticketSold, limit):
return ticketsValid
def ticketsValid(ticketSold, limit):
if ticketSold <= limit:
status = True
else:
status = False
return status
def calcIncome(ticketSold, cost):
sectionIncome = ticketSold * cost
return sectionIncome
def displayTotals():
print('Section A generated {}'.format(sectionACost))
print('Section B generated {}'.format(sectionBCost))
print('Section C generated {}'.format(sectionCCost))
totalRevenue = sectionACost + sectionBCost + sectionCCost
print('The total revenue is {}'(totalRevenue))
main()
我现在的问题是循环没有退出以显示总数
附加问题要求:
• 创建一个主模块作为您的程序启动模块
• 在主模块中使用本地命名常量来获取座位成本和部分座位限制,这些常量将传递给以下几点所描述的模块和功能。
• 尽管问题中有三个座位区,但将创建一组通用模块和函数,用于基于传递的参数的任何给定部分。这些函数的一般逻辑描述如下:
o 包括输入函数 (getTickets),它将给定部分的部分字母和座位限制作为参数。返回给定部分的票数。这个函数应该只返回有效数量的票;应该从此函数调用验证函数ticketValid。
o 包括验证函数 (ticketsValid),它将每节售出的门票和每节的座位限制作为传递的参数。返回一个布尔值,指示为给定部分出售的通过票是否在有效范围内。此验证函数将从先前定义的 getTickets 函数中调用。
o 包括收入计算函数(calcIncome),它将售票和座位成本作为传递的参数,并返回该部分产生的收入。
• 请务必使用currencyFormat