您現(xiàn)在的位置是:首頁 » python編程資訊
資訊內(nèi)容
Python基礎(chǔ)練習(xí)實(shí)例28(推算年齡)
極客小將2020-11-09-
題目:有5個(gè)人坐在一起,問第五個(gè)人多少歲,他說比第4個(gè)人大2歲;問第4個(gè)人多少數(shù),他說比第3個(gè)人大2歲;問第三個(gè)人,又說比第2人大兩歲;問第2個(gè)人,說比第一個(gè)人大兩歲;最后問第一個(gè)人,他說是10歲。請(qǐng)問第五個(gè)人多大?
題目:題目:有5個(gè)人坐在一起,問第五個(gè)人多少歲,他說比第4個(gè)人大2歲;問第4個(gè)人多少數(shù),他說比第3個(gè)人大2歲;問第三個(gè)人,又說比第2人大兩歲;問第2個(gè)人,說比第一個(gè)人大兩歲;最后問第一個(gè)人,他說是10歲。請(qǐng)問第五個(gè)人多大?
程序分析:(方法一)利用遞歸的方法,遞歸分為回推和遞推兩個(gè)階段。要想知道第五個(gè)人歲數(shù),需知道第四人的歲數(shù),依次類推,推到第一人(10歲),再往回推。
(方法二)非遞歸方法,第一個(gè)人10歲,后面每一個(gè)人都比前一個(gè)大2歲,正推,使用循環(huán)執(zhí)行,每到下一個(gè)人加兩歲,直到第五個(gè)人。
方法一程序源代碼實(shí)例:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
def age(n):
if n == 1: c = 10
else: c = age(n - 1) + 2
return c
print age(5)
輸出結(jié)果:18
方法二請(qǐng)大家自行嘗試。
本站部分內(nèi)容轉(zhuǎn)載自網(wǎng)絡(luò),如有侵權(quán)請(qǐng)聯(lián)系管理員及時(shí)刪除。
