Python基础(六) 52周存钱demo
52周存钱1.0
"""
52周存钱挑战1.0
"""
def main():
"""
主函数
"""
money_per_week = 10 # 每周的存入的金额
i = 1 # 记录周数
increase_money = 10 # 递增的金额
total_week = 52 # 总共的周数
saving = 0 # 账户累计
while i <= total_week:
# 存钱操作
saving += money_per_week
# 输出信息
print('第{}周,存入{}元,账户累计{}元'.format(i, money_per_week, saving))
# 更新下一周的存钱金额
money_per_week += increase_money
i += 1
if __name__ == '__main__':
main()
测试结果:
52周存钱2.0
"""
52周存钱挑战2.0
"""
import math
def main():
"""
主函数
"""
money_per_week = 10 # 每周的存入的金额
i = 1 # 记录周数
increase_money = 10 # 递增的金额
total_week = 52 # 总共的周数
saving = 0 # 账户累计
money_list = [] # 记录每周存款数的列表
while i <= total_week:
# 存钱操作
money_list.append(money_per_week)
saving = math.fsum(money_list)
# 输出信息
print('第{}周,存入{}元,账户累计{}元'.format(i, money_per_week, saving))
# 更新下一周的存钱金额
money_per_week += increase_money
i += 1
print(money_list)
if __name__ == '__main__':
main()
测试结果:
52周存钱3.0
"""
52周存钱挑战3.0
"""
import math
def main():
"""
主函数
"""
money_per_week = 10 # 每周的存入的金额
increase_money = 10 # 递增的金额
total_week = 52 # 总共的周数
saving = 0 # 账户累计
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
if __name__ == '__main__':
main()
测试结果:
52周存钱4.0
"""
52周存钱挑战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()
测试结果:
52周存钱5.0
https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior
https://docs.python.org/3/library/datetime.html#module-datetime
"""
52周存钱挑战5.0
"""
import math
import datetime
def save_money_in_n_weeks(money_per_week, increase_money, total_week):
"""
计算n周内的存款金额
"""
money_list = [] # 记录每周存款数的列表
saved_money_list = [] # 记录每周账户累计
for i in range(total_week):
money_list.append(money_per_week)
saving = math.fsum(money_list)
saved_money_list.append(saving)
# 输出信息
print('第{}周,存入{}元,账户累计{}元'.format(i + 1, money_per_week, saving))
# 更新下一周的存钱金额
money_per_week += increase_money
return saved_money_list
def main():
"""
主函数
"""
money_per_week = float(input('请输入新的一年第一周的存入的金额:')) # 每周的存入的金额
increase_money = float(input('请输入每周的递增金额:')) # 递增的金额
total_week = int(input('请输入总共的周数:')) # 总共的周数
# 调用函数
saved_money_list = save_money_in_n_weeks(money_per_week, increase_money, total_week)
input_date_str = input('请输入您想查询的日期(yyyy/mm/dd):')
input_date = datetime.datetime.strptime(input_date_str, '%Y/%m/%d')
week_num = input_date.isocalendar()[1]
print(input_date,"是{}的第{}周:".format(input_date_str[:4],week_num))
print('第{}周的存款:{}元'.format(week_num, saved_money_list[week_num - 1]))
if __name__ == '__main__':
main()
测试结果:
您的资助是我最大的动力!
金额随意,欢迎来赏!