第59讲:Python编程案例之舍罕王赏麦

本文通过实例介绍了如何使用Python解决舍罕王赏麦问题,详细讲解了设计思路和代码实现,包括传统的循环实现和列表生成式的简洁实现方式。
摘要由CSDN通过智能技术生成

1.1.需求描述以及设计思路

需求描述:

印度的舍罕王打算重赏一个宰相,问他有什么要求:

宰相说,请您在在这个棋盘的第一个格子里放1粒麦子,第二个格子里放2粒麦子,第三个格子里放4粒麦子,每一个格子里的麦子数量都要比前一个格子多一倍,把这64个格子都放满就行了。

舍罕王听后认为区区赏金微不足道,可以给。

我们需要实现的功能是,计算出舍罕王一共要在64个格子里放下多少粒麦子。

程序的设计思路:

  • 首先我们要明确计算过程,第一个格子里1粒麦子,第二个格子里2粒麦子,第三个格子4粒麦子,可见每个格子里的麦子数是上一个格子的一倍,每个格子里的麦子数也都是2的n次方。
  • 实现这个程序主要通过循环,循环的次数就是格子数64,每次循环都用上一次格子里的麦子数*2,就可以得到当前格子的数量,最后将每次循环后格子的麦子数相加,就是所有格子里的麦字数量了。
  • 在开始循环之前,先定义两个变量,这两个变量作为初始值。
    • 第一个变量用于存放当前格子的麦子数,第一个格子已经明确知道只有1个麦子了,因此这个变量的初始值就为1,每次循
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jiangxl~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值