majian890324 发表于 2020-5-7 16:36:47

给丈母娘家的彩礼钱,大佬们帮我看一下我算的是不是正确的!

闲来无事在网上看到一段话:

老丈人跟女婿说:你也不用给我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:49:37

本帖最后由 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))

wp231957 发表于 2020-5-7 18:08:31

2的n次幂-1

永恒的蓝色梦想 发表于 2020-5-7 18:36:18

21474836.47 元

majian890324 发表于 2020-5-7 21:26:47

sunrise085 发表于 2020-5-7 17:49
简单地写的话就是一句话

厉害,厉害,简单的那个您能帮我解释一下吗?不太明白,为什么2的29次方就是这个结果呢?谢谢大佬

bencao 发表于 2020-5-7 23:00:14

{:10_249:}

sunrise085 发表于 2020-5-8 00:31:39

majian890324 发表于 2020-5-7 21:26
厉害,厉害,简单的那个您能帮我解释一下吗?不太明白,为什么2的29次方就是这个结果呢?谢谢大佬

那不是2的29次方,那是2的30次方减一
2^0+2^1+2^2+……+2^n=2^(n+1) - 1

majian890324 发表于 2020-5-8 00:38:06

sunrise085 发表于 2020-5-8 00:31
那不是2的29次方,那是2的30次方减一
2^0+2^1+2^2+……+2^n=2^(n+1) - 1

哦哦,谢谢,我说我怎么弄29次方不对呢,太感谢啦!~~~
页: [1]
查看完整版本: 给丈母娘家的彩礼钱,大佬们帮我看一下我算的是不是正确的!