1.案例描述
按照52周存钱法,存钱人必须在一年52周内,每周递存10元。例如,第一周存10元,第二周存20元,第三周存30元,直到第52周存520元。
记录52周后能存多少钱?即10+20+30+...+520=13780
2.0增加功能:记录每周存款金额(使用list)
3.0增加功能:使用循环直接计数(for)
4.0增加功能:灵活设置每周存款数,增加存款数及存款周数
2.案例分析
输入:每周递存金额和挑战总周数
处理:账户累计+=每周存入金额;每周存入金额 +=每周递存金额。从第1周开始循环,到n周结束。
输出:第几周,存入多少元,累计账户多少钱?
3.上机实验
""" 作者:梁斌 功能:52周存钱挑战 版本:3.0 日期:05/08/2017 2.0增加功能:记录每周的存款数 3.0增加功能:使用循环直接计数 4.0增加功能:灵活设置每周的存款数,增加的存款数及存款周数 """ import math def save_money_in_n_weeks(money_per_week, increase_money, total_week): """ 计算n周内的存款金额 """ money_list = [] # 记录每周存款数的列表 for i in range(total_week): money_list.append(money_per_week) saving = math.fsum(money_list) # 输出信息 # print('第{}周,存入{}元,账户累计{}元'.format(i + 1, money_per_week, saving)) # 更新下一周的存钱金额 money_per_week += increase_money return saving def main(): """ 主函数 """ money_per_week = float(input('请输入每周的存入的金额:')) # 每周的存入的金额 increase_money = float(input('请输入每周的递增金额:')) # 递增的金额 total_week = int(input('请输入总共的周数:')) # 总共的周数 # 调用函数 saving = save_money_in_n_weeks(money_per_week, increase_money, total_week) print('总存款金额', saving) if __name__ == '__main__': main()