【Python打卡2019】20190424之n周存钱挑战-用户输入+函数化

0.目标描述

本次支持用户输入,并将计算金额的程序函数化;

1.程序与结果
"""
    输出每周存入的钱和存款总数
    使用list列表
    for+range替换while
    新增:函数化+支持用户输入周数等数值
"""
# import math库,使用求和函数
import math

def total_saved_money_in_week_n(total_weeks, current_week_saved_money, increased_money_per_week):
    """
    n周存钱输出
    :param total_weeks:
    :param current_week_saved_money:
    :param increased_money_per_week:
    :return:
    """
    week_saved_money_list = []  # 列表初始化,该列表存储每个月存入的金额
    for current_week in range(total_weeks):  # 使用range函数
        week_saved_money_list.append(current_week_saved_money)
        total_saved_money = math.fsum(week_saved_money_list)
        # 此处使用current_week+1是因为range从0开始计数
        print("当前第{}周,本周存入{}元,总存款数{}元(使用for+range)"
              .format(current_week + 1, current_week_saved_money, total_saved_money))
        current_week_saved_money += increased_money_per_week


def main():
    """
        主函数
    """
    total_weeks = eval(input("请输入存钱周数:"))
    current_week_saved_money = eval(input("请输入(第一周)初始存入金额:"))
    increased_money_per_week = eval(input("请输入每周存入钱数增长数额:"))
    total_saved_money_in_week_n(total_weeks, current_week_saved_money, increased_money_per_week)


if __name__ == '__main__':
    main()
Y:\Python\Anaconda\python.exe Y:/PythonWorkspace/lect05/MoneyChallenge5.py
请输入存钱周数:10
请输入(第一周)初始存入金额:20
请输入每周存入钱数增长数额:10
当前第1周,本周存入20元,总存款数20.0元(使用for+range)
当前第2周,本周存入30元,总存款数50.0元(使用for+range)
当前第3周,本周存入40元,总存款数90.0元(使用for+range)
当前第4周,本周存入50元,总存款数140.0元(使用for+range)
当前第5周,本周存入60元,总存款数200.0元(使用for+range)
当前第6周,本周存入70元,总存款数270.0元(使用for+range)
当前第7周,本周存入80元,总存款数350.0元(使用for+range)
当前第8周,本周存入90元,总存款数440.0元(使用for+range)
当前第9周,本周存入100元,总存款数540.0元(使用for+range)
当前第10周,本周存入110元,总存款数650.0元(使用for+range)

Process finished with exit code 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值