View Code of Problem 23

def count_rabbits_iterative(day):
    if day == 0:
        return 0
    elif day == 1:
        return 1

    prev, current = 1, 1
    for _ in range(2, day):
        prev, current = current, prev + current
    return current

def main():
    while True:
        day = int(input("请输入第 M 天的数字 M (M<=90),如果M=0,输入结束:"))
        if day == 0:
            break
        if day <= 90:
            rabbits = count_rabbits_iterative(day)
            print(f"第 {day} 天的兔子数量为:{rabbits}")
        else:
            print("输入错误,请输入符合要求的数字!")

if __name__ == "__main__":
    main()

Double click to view unformatted code.


Back to problem 23