法定退休年龄计算器

问题来源:

2024年9月13日第十四届全国人民代表大会常务委员会第十一次会议批准《国务院关于渐进式延迟法定退休年龄的办法》,从2025年1月1日起,男职工和原法定退休年龄为五十五周岁的女职工,法定退休年龄每四个月延迟一个月,分别逐步延迟至六十三周岁和五十八周岁;原法定退休年龄为五十周岁的女职工,法定退休年龄每二个月延迟一个月,逐步延迟至五十五周岁。国家另有规定的,从其规定。

全国人民代表大会常务委员会关于实施渐进式延迟法定退休年龄的决定

参考代码:

# -*- coding: utf-8 -*-
# @Date     : 2024/09/20
# @Author   : idsl2008
# @File     : retirement_age.py

from math import ceil

def retirement_age(y, m, age):
    """法定退休年龄计算器"""

    n = 5 if age == 50 else 3  #根据原法定退休年龄确定最长延迟年数
    s = '\n您的出生年月:%d年%d月\n您的原法定退休年龄:%d周岁\n' %(y, m, age)

    if y < 2025-age:  #2025年前退休,不延迟
        delay = 0
    elif y > 2039-age-n:  #2039年后退休,延迟月数封顶
        delay = n*12
    else:
        delay = ceil(((y+age-2025)*12+m)/(7-n))  #每二(四)个月延迟一个月

    i, j = divmod(delay, 12)  #将延迟月数转换成年月格式
    s += '您的改革后法定退休年龄:'
    #退休年龄整岁与否表述不同
    s += '%d岁%d个月\n' %(i+age, j) if j else '%d岁\n' %(i+age)

    p, q = divmod(delay+m, 12)  #将退休月数转换成年月格式
    s += '您的改革后退休时间:'
    #退休时间含12月与否表述不同
    s += '%d年%d月\n' %(y+p+age, q) if q else '%d年12月\n' %(y+p+age-1)

    s += '您的延迟月数:%d个月' %delay

    return s

y, m, age = map(int, input("请输入您的出生年份、出生月份、原法定退休年龄(以空格分开):").split()) 

print(retirement_age(y, m, age))

封装后成品: 

下载链接:https://idsl2008.lanzn.com/iwG3i2af1oqj

密码:xmhz

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值