题目
5.2016年,微信朋友圈中曾疯传“手机尾号暴露你的年龄”,其算法如下:①看一十你手机号的最后一位;②把这个数字乘以2;③然后加上 5;④再乘以50;⑤把得到的数加上1766;⑥用这个数减去你出生的那一年,现在得到一个新的数字,该数字的最后两位就是你的实际年龄(本规则仅适用于年龄在100岁以内的人)。 现在,请解决以下问题: (1)编写一个函数,该函数有两个参数:一个参数为手机号最后一位;另一个参数为四位数的出生年份,如1990。该函数最后返回按照上述规则计算出来的年龄。 (2)在主程序中测试该函数,该函数能正确反映出你的真实年龄吗?如果不能,如何修250改计算规则?
参考代码
print("学号:12303030209 姓名:罗娜")
def funcation(num,n):
nian=(num*2+5)*50+1766-n
a=str(nian)[-1]
b=str(nian)[-2]
c=b+a
return c
mun=eval(input("请输入你手机号的最后一位:"))
n=eval(input("请输入你的出生年份:"))
print(funcation(mun,n))
#修改后
print("不能反应我现在的年纪")
def f(num,n):
nian=(num*2+5)*50+1774-n
a=str(nian)[-1]
b=str(nian)[-2]
c = b+a
return c
mun=eval(input("请输入你手机号的最后一位:"))
n=eval(input("请输入你的出生年份:"))
print(f(mun,n))
运行结果
请输入你手机号的最后一位:1
请输入你的出生年份:2005
11
不能反应我现在的年纪
请输入你手机号的最后一位:1
请输入你的出生年份:2005
19
说明
此方法仅供学习参考,欢迎讨论