9、编程入门:从算法设计到函数应用

编程入门:从算法设计到函数应用

1. 算法设计:绘制同心圆

在开始编写代码之前,制定一个计划是很重要的。以绘制同心圆为例,我们先思考运行时应该发生的事情:
- 绘制第一个圆
- 绘制第二个圆
- 持续绘制,直到圆小到看不见(假设半径为 1)

但这个算法还不够具体,因为我们不知道圆的半径。我们可以任意选择最外层圆的半径,这里设为 200。对于后续的圆,我们希望其面积是前一个圆的一半。根据圆的面积公式 $πr^2$,可以得出下一个圆的半径是前一个圆半径除以 $\sqrt{2}$。

以下是改进后的算法:
- 从半径 200 开始
- 在屏幕中心绘制一个半径为当前值的圆
- 将半径除以 $\sqrt{2}$,以得到面积为前一个圆一半的圆
- 持续上述操作,直到圆的半径小于 1

由于我们不知道要执行多少次循环,但至少会执行一次,所以使用 do-while 循环:

start radius at 200
do
    draw a circle at center of screen, with this radius
    divide radius by √2 
while radius > 1  (quit when circle's too small to see)
2. 代码实现与验证

为了验证算法是否可行,我们可以进行代码跟踪。首先,将半径设置为 200,绘制一个半径为 200 的圆。然后,将半径除以 $\sqrt{

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值