我在让这个程序运行时遇到问题,现在大约是凌晨 2:00,所以我真的只想结束它。无论如何,我需要创建一个程序,在该程序中计算和显示几周内(由用户输入)的捐款总额和平均值。该程序使用嵌套循环来收集数据并计算平均值。
它的工作方式是:
- 程序询问周数
- 外循环每周迭代一次
- 内循环每周迭代 5 次
- 内部循环的每次迭代都要求用户提供一定数量的捐赠
- 在所有迭代之后,显示捐赠的总和以及每周捐赠的平均值
在创建这个程序时,我遇到了三个主要问题。首先是我的循环嵌套没有按照我想要的方式工作。
weeks = input("How many weeks available for collection? ")
for donation_week in range(0, weeks):
for donation_day in range(0, donation_week*5):
amount = input("How much money was donated today? ")
break
week_total = amount * 5
collection_total = week_total * weeks
average = collection_total / weeks
print "In", weeks, "weeks, a sum of", collection_total, "was collected and an average"\
" of", average, "was donated each week"
例如,如果用户输入 3 周,我希望程序每周获得 5 次,所以 15 次。但它没有,而是只要求两次。
第二个问题是当用户输入 1 周或 0 周时,会出现错误,指出“NameError: name 'amount' is not defined”
最后一个问题是我在编码中实际上还没有涉及到的问题,如果用户每天输入不同的金额,我将如何计算一周的总数(week_total)。我只将金额声明为一个变量,而实际上一周中有 5 天有 5 个金额变量。
再说一次,我对 python 很陌生,我的指导指南真的没有涉及到这些细节。我一直在尝试重新安排和更改这个程序两个小时左右,但我仍然很困惑。希望这里的人可以分享他们的知识。非常感谢。