logo程序设计 竞赛 经典试题
- 格式:doc
- 大小:274.00 KB
- 文档页数:13
l o g o程序设计竞赛题及答案-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN一、画图形。
(20分)图一图二1、(10分)写出画图一的命令答案:repeat 8[fd 50 rt 360*3/8 fd 50 lt 360*3/8-360/8]2、(10分)写出画图二的命令答案:repeat 8[repeat 3[fd 50 rt 120]rt 360/8]考查知识:重复命令的掌握。
考察技能:使用重复命令画出重复的规则图形。
评分标准:没有使用重复命令画图形的扣5分,只有使用难搞重复命令画出全部图形的才给10分。
二、(15分)编写一个带三个变量的过程dbx :n :k :bc,使过程能画出一个由n个边长为bc的正k变形旋转而成的图形。
例如,调用一下过程能画出相对应的图形:Dbx 6 6 50Dbx 5 5 50Dbx 10 4 50答案:to dbx :n :k :bcrepeat :n[repeat :k[fd :bc rt 360/:k]rt 360/:n]end考查知识:带变量的过程的使用考察技能:能灵活运用带变量的过程画出不同的图形三、(15分)编写一个计算一位小数加减乘除的人机交互过程main,当过程运行时,屏幕上会出现一道一位小数的计算题,在你输入这道题的答案后,屏幕会提示你这道题目你是做对了还是做错了。
参考答案:TO JFMAKE "A (RANDOM 100) *MAKE "B (RANDOM 100) *(PR :A [+] :B [的和是多少])MAKE "C READIF :C = :A + :B THEN PR [你答对了!] STOPPR [你答错了!] STOPENDTO JIFMAKE "A (RANDOM 100) *MAKE "B (RANDOM 100) *IF :A < :B THEN MAKE "D :A MAKE "A :B MAKE "B :D(PR :A [-] :B [的差是多少])MAKE "C READIF :C = :A - :B THEN PR [你答对了!] STOPPR [你答错了!] STOPENDTO CFMAKE "A (RANDOM 100) *MAKE "B (RANDOM 100) *(PR :A [×] :B [的积是多少])MAKE "C READIF :C = :A * :B THEN PR [你答对了!] STOPPR [你答错了!] STOPENDTO CHFMAKE "A (RANDOM 100) *MAKE "B (RANDOM 100) *MAKE "C :A * :B(PR :C [÷] :B [的商是多少])MAKE "A READIF :C = :A * :B THEN PR [你答对了!] STOPPR [你答错了!] STOPENDTO MAINMAKE "K RANDOM 4IF :K = 1 THEN JFIF :K = 2 THEN JIFIF :K = 3 THEN CFIF :K = 4 THEN CHFMAINEND考查知识:随机数的灵活使用,尾递归的使用考察技能:能灵活运用随机数产生随机小数,能进行数理分析。
2007年顺德区小学LOGO语言程序设计比赛初赛试卷
一、填空(第小题5分,共15分)
1、画一个黑色的、边长为50的实心正方形:
2、画一个边长为100的五角星:
3、将150-42×2÷14写成LOGO语言的表达式:
二、(15分)编写带变量的过程画下面的图形,并将画相应图形的调用方法写在图形下方
的划线处。
______________ ______________ ___________________
_________________________
三、(15分)编写带变量的过程画如下图形,并将调用该过程画相应的图形的方法写在图
形右方的划线处。
四、(15分)编写一个过程,过程运行时,计算机随机地出100以内的两个正整数的加法
或乘法题,如果你输入的答案正确,屏幕提示“正确!”如果你输入的答案错误,屏幕没有提示。
接着重新出下一道题,如此循环。
下图是过程运行时的画面。
五、(20分)N支球队进行循环赛(即每两个球队之间都比赛一次),共要进行多少场比赛?
1) 请编写过程
2)调用编写的过程计算:8支球队的循环赛共()场比赛,24支球队的循环赛共()场比赛;36支球队的循环赛共()场比赛。
六、(20分)设计交通信号灯:有红、黄、绿三盏信号灯。
红灯亮一段时间,然后熄灭;黄
灯亮起,闪烁3次后熄灭;然后绿灯亮起,一段时间后熄灭;黄灯又亮起,闪烁3次后熄灭;接着红灯又亮起……如此循环。
10月17日初赛练习卷(一)一、基本命令题1、与HT命令功能相反的命令是。
2、设置屏幕底色的命令是,设置画笔颜色的命令是,设置画笔宽度的命令是。
3、海龟画图的三种模式:SS命令是模式,FS命令是模式,TS命令是模式。
4、能使海龟从任何位置返回母位的命令有、、。
个。
7、INT 91.08的值是,ROUND 109.23的值是,SQRT 16的值是。
8、想要让海龟从[120,60]定位到[139,245]点上,应该输入命令。
9、“REPEAT 重复次数[命令序列]”的功能是按重复执行所规定的的。
10、过程的第一行叫________,它以to开头,后跟过程名(中间用空格间隔);中间部分称为_______,它由解决一个问题的具体命令组成;最后一行是_______,用end表示过程结束。
一、选择题1、计算机预防病毒感染有效的措施是()。
A.定期对计算机重新安装系统 B.不要把U盘和有病毒的U盘放在一起C.不准往计算机中拷贝软件 D.给计算机安装防病毒的软件,并常更新2、在计算机内部,数据是以()形式加工、处理和传送的。
A.二进制码 B.八进制码 C.十进制码 D.十六进制码3、多媒体信息不包括()。
A.影像、动画 B.文字、图形 C.音频、视频 D.硬盘、网卡4、计算机系统由哪几部分组成()。
A.主机和外部设备 B.软件系统和硬件系统C.主机和软件系统 D.操作系统和硬件系统5、下列软件属于系统软件的是( ) 。
A.PowerPoint B.Word2000 C.Excel 2000 D.Windows 2000 6、在计算机中,应用最普遍的字符编码是()。
A.BCD码 B.ASCII码 C.汉字编码 D.补码7、应用软件是指()。
A.计算机能够使用所有软件 B.计算机使用时应该具备的软件C.能被应用单位共同使用的某种软件 D.专为某一应用目的而编制的某种软件8、当前笔的颜色为红色,笔的宽度为10,要使笔的宽度为5,颜色为白色,用命令()。
2010年顺德区LOGO语言程序设计比赛复赛试卷
查看答题电子文档,如电子文档没有内容,将以填写在试卷上的内容为准。
)
一、(12分)画图1.1所示的图形
图1.1
二、(16分)编写过程画一个笑脸图,如图2.1所示。
图2.1
三、(16分)求1—1000这1000个数中不能被7整除的数之和。
要求:编写过程计算结果,并将调用过程计算的命令写出来。
四、(16分)如图4.1所示,用一些完全相同的小棒,摆成由许多小等边三角形组成
的大等边三角形,如果这个大等边三角形的底边一共用了:N 根小棒,那么完成
这个图形的拼摆,一共要用多少根小棒?编写过程计算并画出图形。
图4.1
五、(20分)编写带参数的过程,画黑白相间的正六边形。
如图5.1所示:
通过改变参数可以画出不同层数的图形。
1层2层3层
图5.1
六、(20分)设计一个模拟时钟的程序SZ :s :f :m,其中s表示小时,f表示分钟,
m表示秒钟。
要求:能模仿时钟运动。
例如输入SZ 11 15 37
,能画一个时钟,从11
时15分37秒开始走时。
时钟形状如图6.1所示。
图6.1。
1、计算S=1+1/2+1/3+……+1/n。
to sa :npr [计算S=1+1/2+1/3+……+1/n。
]make "a 0make "b :nrepeat :n[make "a 1/:b+:a make "b :b-1](pr [N次一共等于]:a)end运行:sa 102、计算 S=1+2+2*2+2*2*2+……+2*2*2…….*2(10个2)to tw :cpr [计算S=1+2+2*2+2*2*2+……+2*2*2…….*2(10个2)]make "d 0make "e :cif :c=1 then pr [3]stoprepeat :c-1[make "f 2 repeat :e-1[make "f :f*2]make "e :e-1 make "d :d+:f] pr :d+3end运行:tw 103、六角星to m :a :bif :b>3000 then stopfd :a rt :bm :a :b+10end运行: m 10 0m 10 1m 10 2m 10 3m 10 54、编过程,将1,1+2,1+2+3,……1+2+3+……+n各数用直线高度表示。
to m1 :afd :a bk :a rt 90 fd 8 lt 90endto m :emake "c 0make "d 0repeat :e[make "c :c+1 make "d :d+:c m1 :d pr :d wait 10]end运行: m 105、三角星TO FENG :NFD 20MAKE "A 20REPEAT :N [LT 90 FD :A / 2 RT 120 REPEAT 3 [FD :A RT 120] FD :A LT 30 MAKE "A :A * 1.2]ENDTO FENG1 :M :NREPEAT :M [FENG :N pu SETXY [0 0] pd RT 360 / :M]END运行: feng1 5 46、等式13*□9+7*△3=1148中的“□”和“△”都是介于1~9之间的自然数,“□”和“△”各是什么数字?to mymake "x random(9)make "y random(9)if 13*(:x*10+9)+7*(:y*10+3)=1148 then (pr [□=]:x [△=]:y) stopmyend7、随机产生10道三位数减两位数的减法题或三位数除以两位数除法题,并实现:A.三位数和两位数是随机产生的;B.由用户输入计算值,计算机给出对错信息;C.对一道题加10分,错一道题不改变分数。
一、阅读下列程序,从本题所附的8个图中,选出该程序所画出的图形代号填入空格。
(10分每题1分)1. TO EX11REPEAT 2 [FD 100 RT 45 FD 50 RT 135]END2. TO EX12REPEAT 6 [FD 100 LT 60]END3. TO EX13FD 50 LT 90 FD 50 RT 120REPEAT 3 [FD 100 RT 120]END4. TO EX14RT 18 REPEAT 5 [FD 50 RT 144]END5. TO EX15RT 90 FD 50 RT 120REPEAT 2 [FD 100 RT 120]FD 50 RT 90 BK 50END6. TO EX16REPEAT 2 [REPEAT 100 [FD 1 RT 1] RT 80]END7. TO EX17REPEAT 2 [REPEAT 100 [FD 1 RT 100] LT 100]END8. TO EX18REPEAT 4 [REPEAT 3[FD 50 RT 120] RT 90]END9. TO EX19FD 50 RT 60EX19END10.TO EX110FD 10 LT 10EX110END二、下列过程用不同的参数可画出各不相同的图形。
请把各图所用的参数填在图的下面。
(9分每图1分)1. EX21 :S :AREPEAT 12 [FD 20 BK :S RT :A]END2.EX22 :AREPEAT 5 [FD 20 RT :A FD 20 LT :A-72]END三、完成下列程序使各能画出右边的图形。
(10分每空1分)1. TO EX31 :A :SIF :S<0 [STOP]FD :S RT 180-:AFD :S LT:AEND2. TO EX32 :AIF :A<0 [STOP]REPEAT [FD 10 RT 72]RTEX32 :A-0.1END执行 EX323. TO EX33 :SIF :S>20 [ ]RT 150REPEAT [FD :S RT 120]FDEX33 :S*1.2END执行 EX33 10五、由四个正方形构成的图形中,我们规定:①两个正方形之间有一条各个边,②经旋转或翻转后相重合的图形算相同图形。
2011年顺德区LOGO 语言程序设计比赛复赛试卷
(90分钟,答案写在本卷上,位置不够可写到背面,交答题电子文档和本卷)
一、(10分)编写过程画图1所示的图形
二、(10分)编写带参过程画如图2所示形状的图形。
要求:通过改变过程的参数,横向和纵向的
正八边形的个数可以变化。
图2
运行:two 4 3 10
三、有一块边长为:L 的正方形材料。
如图3.1所示。
1、(15分)编写过程THREE :m :n :L ,将它锯开成大小相同的小块(如图3.2所示)。
其中:
m 表示横向黑色块的个数,:n 表示纵向黑色块的个数,:L 表示正方形材料的边长。
图3.1 图3.2
2、(15分)编写过程MJ :m :n :L :K ,计算锯开材料损失的面积(中间白色线所代表的面积)。
其中:K 为分割线的宽度。
四、(15分)编写带参数的过程画如图4所示的“塔尖”。
五、(15分)编写过程FIVE :R ,画一个小球沿着正方形墙内的边线绕行的动画。
如图5所示。
其中:R 是小球的半径,正方形的边长是小球半径的10倍。
六、(20分)有种奇妙的三位数称为“水仙花数”,它的各位数的立方之和等于这个数本身。
例如153就是这样一个三位数: 1×1×1+5×5×5+3×3×3=1+125+27=153 请你找出所有的“水仙花数”。
2005年顺德区LOGO语言程序设计比赛初赛试卷一、选择填空:(每题2分,共26分)1、LOGO语言中的命令都是英文单词的缩写,例如FD、BK、LT、RT分别是英文单词__________、________、________、________的缩写,而ClearScreen、PenUp、PenDown的缩写分别是CS 、_____________、_________________。
2、写出下列命令:设置背景的命令_________、设置笔色的命令_____________、填充颜色的命令______________、改变笔的粗细的命令____ ____________。
3、画一个直径为20的圆:______________________________________________4、画一个横向长为80,纵向宽为40的矩形:_____________________ ________5、画一个边长为100的五角星:________________________________________二、画出下列过程所画的图形(画在题目的右边,要求标出图形的边长。
每题5分,共15分)1. TO AREPEAT 4[FD 20 RT 90 FD 20 LT 90 FD 20 BK 20 RT 90]END执行 A2.TO B1REPEAT 2[FD 20 RT 90 FD 60 RT 90]ENDTO BREPEAT 4[B1 RT 90 FD 60]END执行 B3.TO C1 :XREPEAT 4[FD :X RT 90]ENDTO CC1 60 PU FD 40 RT 90FD 20 PD C1 20END执行 C三、根据图形完成下列过程:(每空2分,共16分)1.TO LXREPEAT _____ [ FD 40 RT 60 FD 40 RT _____ ]ENDTO EX1HT LT _____REPEAT _____ [ LX RT _____ ]END2. TO EX2REPEAT __ [REPEAT __ [ FD 80 RT 90 ] RT __ ]END四、根据要求写出程序:(共9分)自然界的花有的是三瓣,有的是四瓣或者更多。
2010杭州市小学生LOGO语言程序设计竞赛(时间:90分钟)姓名:学校:编号:一、填空题(34分)1. 根据中文说明写出logo命令:后退BK 左转LT 落笔PD 藏龟HT显示角度HEADING 全图形屏幕FS 回母位HOME 显示x 坐标XCOR停止本过程运行STOP 转向指定方向SETH 对封闭区域涂色FILL将程序从磁盘调入内存LOAD 沿水平方向移动到x 点SETX2. “REPEAT 重复次数[命令序列]”的功能是按___命令序列_ __重复执行所规定的重复次数。
3. 用重复命令画正多边形,当所画的正多边形的边数___越多_____、边长___越小_____,所得到的正多边形就越接于__园_______。
4. 定义带参过程时的参数也称_变量__________,是由___冒号跟变名_________组成;在调用带参过程时,对应位置上放的实际数据称为____实参________。
带参过程所带的参数可以根据实际需要带一个、二个或更多个,各个参数之间必须用___空格_____分隔。
5. __CLEAR___命令是清屏不复位,____CS___命令能恢复LOGO初始状态,__CS_____和___DRAW____两条命令是清屏及复位.。
6. 用重复命令画边长为30的正方形的命令是:__REPEAT 4[FD 30 RT 90]___________ _____ __。
7. 画边长为X的N角星的命令是:_____REPEAT N[FD X RT 180-180/N]____________ ______ _____。
8. 画边长为L的正N边形的命令是:___REPEAT N[FD L RT 360/N]___________ __________ _______。
9.朝向查询命令与海龟当前方向__HEADING_____,方向查询命令与海龟当前方向________。
10.过程的第一行叫___过程头_____,它以to开头,后跟过程名(中间用空格间隔);中间部分称为_过程体______,它由解决一个问题的具体命令组成;最后一行是_过程尾______,用end表示过程结束。
1、计算S=1+1/2+1/3+……+1/n。
to sa :npr [计算S=1+1/2+1/3+……+1/n。
]make "a 0make "b :nrepeat :n[make "a 1/:b+:a make "b :b-1](pr [N次一共等于]:a)end运行:sa 102、计算 S=1+2+2*2+2*2*2+……+2*2*2…….*2(10个2)to tw :cpr [计算S=1+2+2*2+2*2*2+……+2*2*2…….*2(10个2)]make "d 0make "e :cif :c=1 then pr [3]stoprepeat :c-1[make "f 2 repeat :e-1[make "f :f*2]make "e :e-1 make "d :d+:f] pr :d+3end运行:tw 103、六角星to m :a :bif :b>3000 then stopfd :a rt :bm :a :b+10end运行: m 10 0m 10 1m 10 2m 10 3m 10 54、编过程,将1,1+2,1+2+3,……1+2+3+……+n各数用直线高度表示。
to m1 :afd :a bk :a rt 90 fd 8 lt 90endto m :emake "c 0make "d 0repeat :e[make "c :c+1 make "d :d+:c m1 :d pr :d wait 10]end运行: m 105、三角星TO FENG :NFD 20MAKE "A 20REPEAT :N [LT 90 FD :A / 2 RT 120 REPEAT 3 [FD :A RT 120] FD :A LT 30 MAKE "A :A * 1.2]ENDTO FENG1 :M :NREPEAT :M [FENG :N pu SETXY [0 0] pd RT 360 / :M]END运行: feng1 5 46、等式13*□9+7*△3=1148中的“□”和“△”都是介于1~9之间的自然数,“□”和“△”各是什么数字?to mymake "x random(9)make "y random(9)if 13*(:x*10+9)+7*(:y*10+3)=1148 then (pr [□=]:x [△=]:y) stopmyend7、随机产生10道三位数减两位数的减法题或三位数除以两位数除法题,并实现:A.三位数和两位数是随机产生的;B.由用户输入计算值,计算机给出对错信息;C.对一道题加10分,错一道题不改变分数。
十道题后统计并输出总分。
To a1Make "b (random 90)+9Make "c (random 900)+99EndTo a2(pr :c[-]:b[=])make "d readif :d=:c-:b then pr[计算正确,加10分] make "n :n+10 stoppr [计算错误,请做下一题]endTo a3(pr :c[/]:b[=])make "d readif :d=:c/:b then pr[计算正确,加10分]make "n :n+10 stoppr [计算错误,请做下一题]endto a4 :m :nif :m<1 then (pr [你的总分是:]:n[分]) stopa1make "a random 2if :a=1 then a2if :a=2 then a3a4 :m-1 :nend执行 a4 10 07、六角星to hao :b :aif :b<1 then stoprt 30 repeat :b[repeat 3[(stampoval 5 5"true)fd :a rt 120]rt 60 fd :a lt 60]lt 120 fd :a*:b rt 120 fd :a lt 30hao :b-1 :aendto hao1 :b :arepeat 6[hao :b :a rt 60]endto hao8 :b :a :cif :b<1 then lt 30 bk :c*:a pd stoprt 30 repeat :b[repeat 3[(stampoval 5 5"true)fd :a rt 120]rt 60 fd :a lt 60]lt 120 fd :a*:b rt 120 fd :a lt 30hao8 :b-1 :a :cendto haoo :a :b :csetpc 1 hao8 :a :b :csetpc 2 rt 90 hao8 :a :b :c setpc 3 rt 90 hao8 :a :b :csetpc 4 rt 90 hao8 :a :b :c setpc 5 rt 90 hao8 :a :b :c rt 90 setpc 6 hao8 :a :b :clt 120 pu fd :b*:c*2 rt 90 pd setpc 12 hao1 :a :b lt 60end运行 haoo 1 20 18、向右滚动的六边形to mm :apu setx :a rt :a fd 35 pd rt 120 pdrepeat 6[fd 35 rt 60] wait 3 csmm :a+3end运行 mm 19、摩天轮to ahtsetpc 12repeat 9[pu fd 80 pd (stampoval 15 15 "true) rt 90+180/9 fd 60 bk 60 lt 90+180/9 pu bk 80 rt 360/9]wait 20cleanrt 10aend10、九尾星repeat 9[repeat 9[rt 5 fd 3 rt 5]repeat 9[lt 5 fd 4 lt 5]rt 160 repeat 9[rt 5 fd 4 rt 5]repeat 9[lt 5 fd 4 lt 5]]11、旋转太极to qwestampoval 100 100repeat 18[lt 5 fd 50*0.174 lt 5]lt 90 pu fd 100 lt 90 pdrepeat 18[lt 5 bk 50*0.174 lt 5]rt 90 pu fd 50 pd (stampoval 25 25"true)pu fd 100 pd stampoval 25 25pu bk 40 pd fillpu bk 10 pd rt 90endto qwe2 :aqwe wait 5 clean rt :aqwe2 :aend12、十字印花to yo1fd 5 lt 90 fd 5 rt 90 fd 5 rt 90 fd 5 lt 90 fd 5 rt 90 fd 5 rt 90 fd 5 lt 90fd 5 rt 90 fd 5 rt 90 fd 5 lt 90 fd 5endto yo2repeat 4 [yo1 lt 90 fd 5 rt 90 fd 5 lt 90 ]pu bk 30 pdendto yo3repeat 4 [yo2 rt 90 pe fd 5 pd fd 5 rt 90 fd 5 lt 90 pu fd 30 pd ] endto yo4repeat 4 [yo3 pu bk 90 pd rt 90 pe fd 5 pd fd 5 rt 90 fd 5 lt 90 pu fd 90 pd ]endto yo5repeat 4 [yo4 pu bk 210 pd rt 90 pe fd 5 pd fd 5 rt 90 fd 5 lt 90 pu fd 210 pd]endto yo :nif :n=1 yo1if :n=2 yo2if :n=3 yo3if :n=4 yo4if :n=5 yo5end运行: yo 1yo 2yo 3yo 4yo 513、渐大的圆每次大三分之一to sa :npr [计算S=1+1/2+1/3+……+1/n。
]make "a 0make "b :nrepeat :n[make "a 1/:b+:a make "b :b-1](pr [N次一共等于]:a)end运行:sa 10to tw :cpr [计算S=1+2+2*2+2*2*2+……+2*2*2…….*2(10个2)]make "d 0make "e :cif :c=1 then pr [3]stoprepeat :c-1[make "f 2 repeat :e-1[make "f :f*2]make "e :e-1 make "d :d+:f] pr :d+3end运行:tw 10to m1 :arepeat 54[rt 5 fd :a*pi/18 rt 5]endto m :b :chtfs lt 90 m1 :b rt 180if :b=1 then [fd 20 repeat 3[fd 10 rt 120]stop]repeat :c-1[make "b :b*4/3 m1 :b rt 180]rt 90fd 20 repeat 3[fd 10 rt 120]end运行: sa 2014、三角金字塔to sa1 :brepeat 3[fd :b rt 120]endto sa2 :asa1 :a*4 fd :a*2 lt 120sa1 :a*2 fd :a lt 120sa1 :a rt 120 fd :a rt 120 fd :a lt 120sa1 :a rt 120 fd :a rt 120 fd :a lt 120 sa1 :a rt 60 fd :a lt 60 fd :a rt 120 fd :a*2 lt 120 sa1 :a*2 fd :a lt 120sa1 :a rt 120 fd :a rt 120 fd :a lt 120sa1 :a rt 120 fd :a rt 120 fd :a lt 120 sa1 :a rt 60 fd :a lt 60 fd :a rt 120 fd :a*2 lt 120 sa1 :a*2 fd :a lt 120sa1 :a rt 120 fd :a rt 120 fd :a lt 120sa1 :a rt 120 fd :a rt 120 fd :a lt 120 sa1 :a lt 60 fd :a lt 60 fd :a*2 rt 120 fd :a*4 lt 120 endto sa :crt 90 sa1 :c*8 fd :c*4 lt 120sa2 :csa2 :csa2 :cend运行: sa 2015、树to su :n :lpr [树运行su 层数第一个边长]fd 20su1 :n :lendto su1 :a :bif :a<1 stoplt 90 fd :b/2 rt 120repeat 4[fd :b rt 120]lt 150su1 :a-1 :b/2end16、求列数:1,2,6,16,44,120,328……数列中的第N个数是多少?to m :nif :n=1 then pr [第N个数是1] stopif :n=2 then pr [第N个数是2] stopmake "a 1make "b 2make "c 0repeat :n-2[make "c (:a+:b)*2 make "a :b make "b :c](pr [第N个数是]:c)end17、计算机随机地出100以内的两个数的加法或乘法题,如果你输入的答案正确,屏幕提示“正确!”;如果你输入的答案错误,屏幕没有提示。