Python猴子吃桃题源码​:请问第一天摘了多少桃?

Python猴子吃桃题源码:请问第一天摘了多少桃?

猴子吃桃

    有一只小猴子,摘了很多桃

      第1天吃了全部桃子的一半,感觉不饱又吃了一个

      第2天吃了剩下的一半,感觉不饱又吃了一个

      ... 以此类推

      到第10天,发现只剩一个了

    请问第一天摘了多少桃?

代码 :

tao10 = 1


tao9 = (tao10 + 1) * 2


tao8 = (tao9 +1) * 2

ttt = 1

i = 10

while i>0:

ttt = (ttt + 1) * 2

i -= 1


print(ttt)


讲解:

我们先看题目:

第1天吃了桃子的一半感觉吃不饱又吃一个 

第2天能又吃了剩下的一半又不饱又吃了一个 

就这样吃到第10天的时候只剩一个 

那么我已知第10天有1个桃子,那么我们定义一个 tao10 等于一 

那么我们需要这样的话就需要一个公式 

那么公式呢我们先手动推导一下这个第9天也是多少 

第9天的话呢我们定义一个 tao9 = (tao10 +1 ) * 2 第10天 就是tao10 加上一 

为什么是加一呢?加一的话就是说他感觉不饱又吃了一个,再乘一个2 就代表着他第9天吃了第8天的一半 

对吧所以我要推到第9天的话那就是说,这个桃子啊他就先是等于 1 算出第 9 天让我们就加上第9天最后一次的哪一个然后再乘一个2 那么就是第9天剩下的一个桃子第9天的桃子数 


然后我们再这样推导出第8天的桃子杰出 

我们再定一个tao8 就等于第9天的桃子加上1 再 * 2 

第9天是4个 

然后我们第8天就是(4+1) * 2 ,第8天就是10个 

 然后这样的话就得到一个公式所以说我们要利用的循环 

我要利用的while循环循环从10到1 

i先等于10 条件是 i 大于0 

然后我们再定义一个 ttt = 1 

然后 再把之前的公式套进去 

那么在控制下循环变量 i -= 1 

循环理论上是OK没问题让我们写完了之后再打印一下 

printer 一个 ttt 看下结果




最后编辑于:2019/07/30作者: 牛逼PHP

发表评论