LOGO编程画个CPU(三)

画个CPU是一道有“嚼头”的题目。前面有一个“懒”的编程方式,这里还有一个“直观”的编程方式。所谓“直观”,整个CPU看起来就像是个正方形、4条边,一条一条边地画不就可以了吗?但是这样的编程方式一定要预先谋划清楚:A.这4条边有相互覆盖重叠的部分,只画与这一条边不可或缺的部分;B.每次必须先画起始点的“一小段”直线;C.再转向到正方形的中间画14层、每层3根针脚;D.自己这部分的针脚画好之后,要回归到刚才画“一小段”的临时终止点;E.接着画CPU外框未画的直线的那“一大段”。像上面这样的过程4次重复,CPU就基本搞定了。最后画内框、写屏CPU就大功告成了。一场竞赛考试4道题120分钟,这还是最简单的题目,合理的编程速度是必须在15~20分钟之内完成,否则其它的题目没时间做了,真是没法考出好成绩来。现在不少学习LOGO编程的学习,只热衷于初赛试卷“刷题”,把ABCD答案选出来就算完成了,而往往忽视了上机编程。如果都是这样的训练的话,考场上遇到这样的题目,在平时如果没有积累大量编程的实践经验,复赛现场是编写不出程序来的。最佳的学习方法是早在参加初赛、复赛之前几个月就开始不但“刷题”初赛试卷,也要找一本《复赛详解》来练习自己编程。《复赛详解》中可是包含了从2005年至今的所有竞赛题目,每一道题目都有详详细细的源程序,能够看到各种编程的“套路”,学习起来容易多了。有人会说,“初赛”都不知道能不能“出局”,预先准备什么“复赛”。这样看的可就“外行”了。搞清楚复赛每道题的编程原理,其实是对初赛那些较为简单题目的逻辑增强,是相互促进的作用。只应付个初赛,对复赛没有提前量进行准备,到复赛场上是注定要败北的。好在现在找一本《复赛详解》是没多大困难的事。未雨绸缪才是学编程高者的做派。
to bian
;画一条边的子程序
pd fd 15
;先画这条边底下的一小段
pu rt 90 fd 15
;拐弯移动到正方形画“针脚”的位置
repeat 14[
;每条边分配画14层的针脚
repeat
3[
;每层针脚画3根针
pd
setpensize 2 circle 5
;画一根针脚的两个圆圈
setpensize 1 circle 10
pu fd 25]
;移动到这一层下一个针脚的位置上
pu bk 75 lt 90
fd 25 rt 90] ;移动到下一层画针脚的位置
lt 90 bk 25*14
;这一部分的针脚画好后移动到刚才那“一小段”的接续位置上
rt 90 bk 15 lt 90
pd fd 430-15
;接续画CPU外框的“一大段”
end
to cpu4 ;主程序 for
fmslogo8.3.2
cs setpc 0
pu setxy -215 -215
pd
repeat 4[bian rt 90]
;重复4次分别画4条边
pu setxy -125 -125
pd ;画中心的框
fd 250-70/sqrt 2 rt 45 fd 70 rt 45
fd 250-70/sqrt 2
rt 90 fd 250 rt 90 fd
250
pu setxy -25 10 pd seth 90
;写屏CPU
label "CPU
ht
end
历年复赛题动画实例:
加载中,请稍候......