给丈母娘家的彩礼钱,大佬们帮我看一下我算的是不是正确的!
闲来无事在网上看到一段话:老丈人跟女婿说:你也不用给我30万、50万的彩礼钱了{:9_236:} ,你就第一天给我一分,第二天给我两分,以后每天都给我前一天的两倍的钱
,给我一个月,我就让闺女嫁给你,小伙子兴高采烈的就加了老丈人的微信,转了第一天的一分钱。{:9_219:}
问:假定一个月30天的时间,小伙子一共要给老丈人多少钱才能娶到老婆?{:5_100:}
我是这样写的:money = 0.01
moy = 0
for i in range(1,30):
money = money * 2
moy = moy + money
print(round(moy, 2) + 0.01)
#round()的意思是保留小数点后两位,
#+0.01的意思因为第一天我不知道怎么加入到循环里,所以就单独加一个第一天的钱
各位大佬有没有更简单的方法。。。。我感觉我这个写的怪怪的. 本帖最后由 sunrise085 于 2020-5-7 17:55 编辑
money = 0.01
moy = 0
for i in range(30):
moy = moy + money#先加和,再修改money的值,就可以把第一天加到循环里了。
money = money * 2
print(round(moy,2))
简单地写的话就是一句话
print(round(0.01*(2**30-1),2)) 2的n次幂-1 21474836.47 元 sunrise085 发表于 2020-5-7 17:49
简单地写的话就是一句话
厉害,厉害,简单的那个您能帮我解释一下吗?不太明白,为什么2的29次方就是这个结果呢?谢谢大佬 {:10_249:} majian890324 发表于 2020-5-7 21:26
厉害,厉害,简单的那个您能帮我解释一下吗?不太明白,为什么2的29次方就是这个结果呢?谢谢大佬
那不是2的29次方,那是2的30次方减一
2^0+2^1+2^2+……+2^n=2^(n+1) - 1 sunrise085 发表于 2020-5-8 00:31
那不是2的29次方,那是2的30次方减一
2^0+2^1+2^2+……+2^n=2^(n+1) - 1
哦哦,谢谢,我说我怎么弄29次方不对呢,太感谢啦!~~~
页:
[1]