一个小孩给一个富翁做事,商量的报酬是第一天2角,第二天是第一天的2倍,以此类推,请问第10天过后,这个小孩从第1天到10天每天能拿到的报酬,以及这10天总共能拿到的报酬,并输出相应结果。怎么使用递归函数完成?
def fun(N):
if N == 1:
return 2
else:
return 2 * fun(N - 1)
n = 10
sumN = 0
for i in range(1, n + 1):
print("第{}天的报酬是{}角".format(i,fun(i)))
sumN += fun(i)
print("总报酬是{}角".format(sumN))
def fun(N):
if N == 1:
return 0.2
else:
return 2 * fun(N - 1)
n = 10
sumN = 0
for i in range(1, n + 1):
print("第{}天的报酬是{}元".format(i,fun(i)))
sumN += fun(i)
print("总报酬是{}元".format(sumN))
#第二天的报酬是第二天的二倍
def ff(n):
if n !=1:
return ff(n - 1) * 2
else:
return 0.2
# if n == 1:
# return 0.2 # 递归停止
# return ff(n - 1) * 2+0.2
def f(n):
sum=0
for i in range(1,n+1):
sum+=ff(i)
print("第%d天的报酬为:%.1f"%(i,ff(i)))
print(sum)
f(10)
测试图:
如有帮助,还请点下采纳!