有关十二生肖年份的问题
def shengxiao(year):#求生肖
zodiac=["鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"]
index=(year-1972)%12 #1972年为鼠年
return zodiac
myyear=int(input("请输入出生年份,输入0结束:"))
while myyear!=0:
print("你的生肖是:",shengxiao(myyear))
myyear=int(input("请输入出生年份,输入0结束:"))
我不理解的是:为什么我输入一个比1972还小的数,程序还能算对?
请输入出生年份,输入0结束:1
你的生肖是: 鸡 你的真正问题应该是想问:为什么负数可以取模对吗?
正解:负数是可以取模的,至於为什么,你要问发明数学的人。 得虧python的%是取模 所以比較方便 如果是其他語言還得自己寫取模的算法{:10_292:} 因为负数可以取模操作
-2 % 5 = 3
-1 % 999 = 998
页:
[1]