目录
28.
题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
思路:从结果出发,从第五名倒回去倒到第一名
递归 :age(n-1)+2 return c(递归结果)
"""
CSDN : heart_6662
PYTHON amateur
"""
def age(n):
if n == 1:
c=10
else:
c = age(n-1) + 2
return c
print(age(5))
不用递归
def age():
n = 10
for i in range(1, 5):
n = n + 2
print("第5个人{0}岁".format(n))
age()
29.
题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
思路;求几位数用len函数,range遍历,逐一打印 注意:len函数不能对int(整形起起作用)
len函数对str起作用
print ('输入大于10的数字:')
n=input()
x=str(n)
for i in range(len(x)-1,-1,-1):
print (x[i]), # , 号设置不换行
b=len(x)
print(b)
方法二:
分解出每一位数
取余
x = int(input("请输入一个数:\n"))
a = x // 10000
b = x % 10000 // 1000
c = x % 1000 // 100
d = x % 100 // 10
e = x % 10
if a != 0:
print ("5 位数:",e,d,c,b,a)
elif b != 0:
print ("4 位数:",e,d,c,b)
elif c != 0:
print ("3 位数:",e,d,c)
elif d != 0:
print ("2 位数:",e,d)
else:
print ("1 位数:",e)