How to think:画个正方形

如何画一个正方形?

简单,拿起铅笔和尺子,画成直角的四条等长相交直线就可以了,谁不会呢?

可是,我说的是用Scratch画啊?!所以,开启程序员模式的第一步,就是要明确机器是死的,笨的,他只会简单的动作,除非,你替它规划好了,否则,靠它自己,问题是不能得到解决的!所以,第二步就是看看你的笨机器都会点什么,让后,你用这些东西让它发挥更大的作用,完成预定工作!如果,没有这种能力,发明了轮子有什么用呢?电有能干什么呢?就是给你最快最强大的计算机,你又能干得了什么?!

于是,你去找Scratch的画图命令,发现只有画笔抬起放下、设置宽度和颜色的命令,根本就没有划线的命令,但是你知道有移动命令,所以,你不免想:也许,放下画笔,移动角色,就会画出东西来,抬起画笔,就不会有东西画下来了!

是这样吗?不要问,直接验证一下即可!

现在,我们要画一个正方向,如何画呢?

按部就班的用划线、旋转、划线、旋转、划线、旋转、划线的方式完成,是最直接的!作为第一次尝试让电脑听你指挥,你当然可以试一试!

但是,这种顺序罗列所有做事步骤的“程序”还是太笨了点,因为,这件事也可以看做一个操作划线并旋转的操作循环四次就可以了!按照这个思路,程序该如何写呢?

先不要管具体的指令是什么,先在纸上画出来吧,这就是程序框图的用途:

《应谐录》by刘元卿 有记:汝有田舍翁,家资殷盛,而累世不识之乎.一岁,聘楚士训其子.楚士始训之搦管临朱,书一画,训曰"一"字;书二画,训曰"二"字;书三画,训曰"三"字.其子辄欣欣然,掷笔归告其父曰:"儿得矣,儿得矣;可无烦先生矣,重费馆谷也,请谢去."其父喜,从之,具币谢遣楚士.逾时,其父拟征召姻友万氏姓者饮,令子晨起治状,久之不成.父趣之.其子恚曰:"天下姓字伙矣.奈何姓万 自晨起至今,才完五百画也."

如此,用这个方式,你画出别的正N边形也没什么问题了吧!这就是通用算法!

记得我刚刚开始学习计算机编程的时候,刚刚学了输出语句(就是打印一个字符或一段话出来在屏幕上),习题往往是让你做一个用*或者别的什么字符画方形或者菱形,那时候根本就没学过任何“画图命令”,简直不知道如何下爪。根本就没意识到题目其实是让你“模拟”出一个那样的图案,而不是让你画出来!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容