阿基米德分牛問題是一個古代有趣的數學問題,問題描述如下:假設有一批牛,開始時只有一只成年母牛,每年初牛的數量翻倍,到年底時每只母牛生下一只小牛,小牛從出生之日起需要3年才能成為成年母牛。現在給定一個年數n,求在n年后有多少只成年母牛。
要用Python求解這個問題,可以使用遞歸方法來計算每年的成年母牛數量。
下面是一個使用Python編寫的求解阿基米德分牛問題的例子:
def count_cows(n):
if n == 0: # 如果年數為0,返回1只成年母牛
return 1
elif n <= 3: # 如果年數小于等于3,返回2只成年母牛
return 2
else:
return count_cows(n-1) + count_cows(n-3) # 遞歸計算每年的成年母牛數量
# 輸入年數
n = int(input("請輸入年數:"))
# 調用函數計算成年母牛數量
count = count_cows(n)
# 輸出結果
print("在{}年后有{}只成年母牛。".format(n, count))
運行程序后,輸入所需年數,即可得到在指定年數后的成年母牛數量。