def main():
for i in range (3):
n=float(input(“请输入定期利率n”))
cunkuan = 10000
笨办法,循环:
n=float(input())
cunkuan=10000
y=0
while cunkuan<20000:
cunkuan*=n/100+1
y+=1
print(y)
聪明办法:
import math
n=float(input())
y=math.log(2,n/100+1)
y=math.ceil(y)
print(y)
这题实际上是求解(1+n%)^y=2,y在指数位置,两边取对数即可得 y = log2(1+n%)。如果年需要整数,则对y向上取个整即可。
import math
n=float(input("请输入定期利率n"))
y=math.log(2,n/100+1)
y=math.ceil(y) # 如果需要整数则向上取整
print(y)