logo语言是计算机语言吗,LOGO语言的编程

LOGO语言的编程

一般的编程语言都需要编写程序,当然,LOGO语言也不例外。由于指令容易输入错误,不易修改且无法保存,更不能重复使用,如果需要重新绘制相同的图

形,那么必须输入与以前相同的指令,并且这些曾输入的指令不能加以组合。至于程序的内容,是由解决问题的步骤所需要的指令组合而成的,需由设计者赋予该程

序以名称,以供识别。使用LOGO语言作图,虽然可以通过命令行方式进行,但这仅针对初学LOGO语言时,可以开始学一些常用命令,作出一些简单的图形,

以引起儿童的兴趣。在对命令比较了解及熟悉以后,就可以进行针对性地学习一些简单的程序编写,作出更加漂亮的图形。 下面我将以MSWLogo

V6.4为例来介绍如何建立一个程序的基本语法:

1.作为一个程序是以“起始”为开始,“终止”为结束。当选择“编辑新程序”时,在程序编辑区中将会出现以下的字符,供程序者填入相应的命令。

To(起始) 程序名称 N //修改程序名称以供识别

…………..

…………..//输入解决问题所用到的命令

…………..

End(终止)

2.绘制不同大小的图形时需要选择不同的参数,所以使用者在设计程序时,需要使用一个比较适合

的并有意义的名称来代表,传给参数的数值资料不同则执行结果也就不同,并且程序在执行过程中,也会不断地变化参数的内容。在选择参数时,需要在参数名称前

面加上冒号,用来与一般程序中的命令区别开。如:

起始 程序名称 N :参数1 :参数2 … //定义列

…………….

Repeat :参数 1[Forward :参数2 …] //输入解决问题所需的命令

…………….

终止

当程序内容含有参数时,必须将所有参数写在定义列之后,以便执行时能接收必要的资料。

3.IF…THEN …ELSE…条件执行语句

基本格式为:IF 条件表达式 THEN [命令行1] ELSE [命令行2]

[命令行3]

当条件表达式:成立时,执行[命令行1]内的命令;不成立时,执行[命令行2]内的指令;在执行完[命令行1]或[命令行2]之后,则继续执行[命令行3]

该软件可在http://bhfx.buaa.edu.cn/Soft/ShowSoft.asp?SoftID=19处下载。

LOGO命令的简写和功能

1. 前进命令FORWARD(简写FD)

【格式】 FD 步长

【功能】命令小海龟按当前方向前进指定的步长。

【说明】

⑴ 在LOGO语言中,命令与数据之间是以空格分隔的。如,在输入的前进命令和步长之间必须用空格分 隔。

⑵ 小海龟移动时,要特别注意它的当前位置和方向,当前方向就是它的头所指的方向。

⑶ 让小海龟移动时,是通过步长的长短来控制机器人前进的距离。

⑷ 步长的具体值就是指距离的长短(小海龟的默认值为每1个步长为0.5厘米)。如FD 100中步长值为

100,是让小海龟前进50厘米。

⑸ 输入的LOGO命令既可以是大写字母,也可以是小写字母,例如, “fd 100”命令,也可以写 成“FD

100”,两种输入方式的执行效果相同

2. 后退命令BACK(简写BK)

【格式】 BK 步长

【功能】命令小海龟按当前方向后退指定的步长。

【说明】

⑴ 让小海龟移动时,是通过步长来控制小海龟后退的距离。

⑵ 小海龟移动时,要特别注意它的当前位置和方向,后退方向就是它的头所指的反方向。 ⑶

步长的具体值就是指步长的长短(小海龟的默认值为每一步长为0.5厘米)。

⑷ 前进、后退等命令需要的数据既可以是具体数值,也可以是一个算式,小海龟会自动计算算

式,再按计算的结果完成任务。在计算机中加号、减号、乘号、除号分别用“+”、“-”、“*” 、“/”符号表示。

【应用】 后退100步: ⑴ 命令方式:BK 100

⑵ 过程方式: TO HT

BK 100

END

3. 左转命令LEFT(简写LT)

【格式】 LT 角度

【功能】命令小海龟向左 (逆时针方向) 转动指定的角度。

【说明】

⑴ 让小海龟转动时,是通过角度的值来控制小海龟向左转动的角度。

⑵ LOGO语言中LT 180,此命令的是让小海龟左转180度。

【应用】 向左转动90度: ⑴ 命令方式:LT 90

⑵ 过程方式:TO ZZ

LT 90

END

4.右转命令RIGHT(简写RT)

【格式】 RT 角度

【功能】命令小海龟向右 (顺时针方向) 转指定的角度。

【说明】

⑴ 让小海龟转动时,是通过角度的值来控制小海龟向右转动的角度。

⑵ LOGO语言中RT 90,此命令的意思是小海龟右转90度。

【应用】向右转动90度:

⑴ 命令方式:RT 90

⑵ 过程方式:

TO YZ

RT 90

END

5.时间命令WAIT

【格式】 WAIT 时间

【功能】 等待一段时间。

【说明】

⑴ 在让小海龟运动时,可以通过时间命令,调整两个命令间的等待时间。

⑵ WAIT 1000 此命令是将等待时间设为1000毫秒(1秒)。

【应用】

前进100步,等待1秒:

⑴ 命令方式:RT 90

⑵ 过程方式:

TO DD

FD 100 WAIT 1000

END

6.初始化命令DRAW

【格式】 DRAW

【功能】将LOGO语言系统恢复为启动时的初始状态。

【说明】

⑴ 初始化命令,将系统恢复为启动时的初始状态。

⑵ 初始化命令,是一个无参数命令。

⑶ 系统启动时默认为初始状态,可以省略。

7.落笔命令PD

【格式】 PD

【功能】命令小海龟落下“画笔”,小海龟就又可以画图了。

⑴ 落笔命令在“仿真”运行时可以使用,落笔后,小海龟移动时可以留下移动的轨迹。

⑵ 安装了画笔模块,小海龟就会有一支真正的画笔,这时落笔命令才有作用。

⑶ 落笔命令PD后面没有参数。

⑷ 落笔命令要与抬笔命令配合使用,当小海龟处于抬笔状态时,移动不会留下痕迹,只有输入落

笔命令,小海龟移动时可以留下移动的轨迹。

【应用】

小海龟落下画笔,前进100步:

⑴ 命令方式:PD

⑵ 过程方式:

TO DD

PD FD 100

END

8.抬笔命令PU

【格式】PU

【功能】命令小海龟抬起“画笔”,这时,小海龟再移动时,就不会留下痕迹了。

【说明】

⑴ 抬笔命令在“仿真”运行时可以使用,系统默认为抬笔状态。

⑵ 小海龟安装了画笔模块,小海龟就会有一支真正的画笔,这时抬笔命令才有作用。

⑶ 抬笔命令PU后面没有参数。

【应用】

小海龟落下画笔,前进100步,抬起画笔,前进100步:

⑴ 命令方式:PU

⑵ 过程方式:

TO DD

PD FD 100 PU FD 100

END下一个命令。

9、清屏命令CS

【格式】cs

【功能】清除屏幕上所有的图形,海龟回到初使位置。

注:清屏幕命令不带参数,清屏幕命令只能将屏幕的图形清除,海龟回到初始位置,不改变当前其他状态参数的设置。

10、清图命令CLEAN

【格式】clean

【功能】CLEAN (只清除了屏幕上的图形,其他一切不变)

STAMPOVAL画椭圆命令

1) 画空心椭圆

格式:STAMPOVAL 参数1 参数2

注:如果是显龟,海龟始终处在所画图形的中间位置。不论海龟头的方向如何,画出的椭圆的对称轴始终与X轴、Y轴保持一致。当两轴取值相同时所画图形为圆。

例如:

?DRAW

?STAMPOVAL 100 50

?RT 45 FD 50

?STAMPOVAL 100 100

2) 画实心椭圆

格式:(STAMPOVAL 参数1 参数2 ” TRUE)

注:实心圆内所填充的颜色与当前笔的颜色一致。

例如:

?DRAW

?(STAMPOVAL 150 50 ”TRUE)

?PU FD 150 PD

?(STAMPOVAL 60 80 ”TRUE)

画矩形命令 STAMPRECT

1) 画空心矩形

格式:STAMPRECT 参数1 参数2

注:参数1为矩形横向的宽度,参数2为矩形的纵向宽度,不论海龟的方向如何,海龟始终处在所画图形的左下角。当两个宽度相等时所画图形为正方形。

例如:

?DRAW

?STAMPRECT 250 100

?DRAW

?STAMPRECT 130 130

2) 画实心矩形

格式:(STAMPRECT 参数1 参数2 ”TRUE)

注:参数1为矩形横向宽度,参数2矩形纵向的宽度。

例如:

?DRAW

?(STAMPRECT 100 100 ”TRUE)

?(STAMPRECT 280 170 ”TRUE)

9.重复命令REPEAT

【格式】 REPEAT 重复次数[需要重复的命令]

【功能】将方括号内的命令重复执行指定的次数。

⑴ 使用重复命令的关键是要找准“需要重复的命令”。画4条线就应重复4次,画一条线的命令就是“需要重复的命令”。

⑵ 当某些命令需要反复执行多次时,用重复命令,可以简化命令的输入过程。

【应用】

画正方形:

⑴ 命令方式:REPEAT 4[FD 100 WAIT 500 RT 90 WAIT 500]

⑵ 过程方式:

TO ZFX

REPEAT 4[FD 100 WAIT 500 RT 90 WAIT 500]

END

10.赋值命令MAKE

【格式】 MAKE "变量名 表达式

【功能】 将表达式的值,赋给指定的变量。

【说明】

⑴ “"”表示赋值对象,"后面是变量名。

⑵ 表达式是赋值内容,执行赋值命令时先计算,然后将值赋给变量名表示的变量,如MAKE

"A 8*3/2,执行后A的值就是12.。

【应用】

给变量赋值(前进200步):

⑴ 命令方式:MAKE " A 100

⑵ 过程方式:

TO QJ

MAKE " A 100

MAKE " B :A+100

FD :B

END

12.条件转移命令1

【格式1】 IF 条件表达式 THEN 命令组

【功能】当条件表达式成立时,先执行THEN后面的命令,再执行下一行命令。当条件表达式不成立时,就直接执行下一行命令。

【说明】

⑴ 条件转移命令使机器人有了判断的能力。根据判断出的结果,小海龟可以有选择地进行下一步的工作。

等于 =

大于 >

大于等于 >=

小于 <

小于等于 <=

不等于 <>

⑵ 条件表达式可以分为简单条件和复杂条件:

① 简单条件

两个表达式比较就是简单条件(表达式我们放在后面讲,在这里可以理解为一个算式),形式为:

(表达式)(关系运算符)(表达式)

例如: :A>60 :X+2>5*2 :N=0 都是简单条件。

② 复杂条件

由简单条件进行一些逻辑运算就是复杂条件。

⑶ 逻辑运算

LOGO语言中逻辑运算符有三种:AND(与)、OR(或)、NOT(非),逻辑表达式的运算结果是一个

逻辑值。

逻辑运算结果如下:

:A AND :B 只有A 为真,B为真,逻辑表达式为真。

:A OR :B A和B中只要一个为真,逻辑表达式为真。

:NOT :N N为真,逻辑表达式值为假; N为假,逻辑表达式值为真。

⑷ 在逻辑运算、关系运算、数学运算的组合条件判断中,必须使用括号来表明运算顺序。

⑸ 各种数学运算的范围为:0~65535,不能超过。除法运算为整数除法,即取商。

【应用】

躲避前方障碍物

过程方式:

TO QBZ

FD 2 WAIT 2

IF :PIN5=0 THEN RT 90

END

13.条件转移命令2

【格式2】 IF THEN ELSE

【功能】当条件表达式成立时,执行THEN后面的“命令1”;当条件表达式不成立时,执行ELSE后面的“命令2”。执行完命令1或命令2后,再执行下一条命令。

【说明】

条件转移命令IF THEN ELSE

必须写在一行。

【应用】

躲避前方障碍物

过程方式:

TO QBZ

IF :PIN5=0 THEN RT 90 ELSE FD 2 WAIT 2

END

14.停止命令STOP

【格式】 STOP

【功能】过程执行中遇到此命令,立即停止执行当前的过程。

【应用】

躲避前方障碍物

过程方式:

TO QBZ

FD 2 WAIT 2

IF :PIN5=0 THEN STOP

END

15.返回命令RETURN

【格式】 RETURN

【功能】返回调用过程命令的

pc logo 画图例子

例1、 请你编写过程,帮小海龟建起这栋房子吧!(如下图)

解 分析这个房子图,它是由三角形,圆形,长方形和正方形组成,根据这些形状的大小,我们先为每个形状编一个过程。

TO sanj \\三角形的过程\\

REPEAT 3[FD 60 RT  120]

END

TO chang\\长方形的过程\\

REPEAT 2[FD 80 RT  90 FD 60 RT  90]

END

TO chuang\\四个正方形的过程\\

REPEAT 4[REPEAT 4[FD 20 RT  90]RT  90]

END

TO yuan\\圆的过程\\

REPEAT 36[RT  5 FD 3.14*20/36 RT  5]

END

然后,我们就将这些过程拼起来,组成一栋小房子。

在拼接的过程中,要注意两点:

(1) 拼图时,要确定好整个图形的起笔点。

(2) 一定要注意各个图形之间的衔接,这就要求我们牢记基本模块的起笔点,并弄清拼接时的位置要求。

这一题中,房顶的三角形需要先将海龟向右转30度(RT 30),然后再开始。

拼接的过程如下:

TO fangzi

CS

RT  30 san

RT  60 FD 30 LT 90 PU FD 20 RT  90 PD

yuan

RT  90 PU FD 20 RT  90 FD 30 RT  90 BK

80 PD chang

PU FD 30 RT  90 FD 30 LT 90 PD chuang

END

例2、 画一列小火车,接大家去做客!(如下图)

解:观察这列火车,有四节相同的车厢部分,而这些车厢又有长方形和圆形组成,因此,我们先定义一个画圆的过程和一个画长方形的过程,

TO YUAN\\定义圆的过程\\

REPEAT 36[RT  5 FD 6*6.28/36 RT  5]

END

TO CHANG\\定义长方形的过程\\

REPEAT 2[FD 30 RT  90 FD 40 RT  90]

END

然后将这两个过程组合起来画成一个车厢,

TO CHEXIANG\\定义车厢的过程\\

RT  90 FD 7 LT 90 BK  15

CHANG

RT  90 FD 10 YUAN FD 20 YUAN

END

最后调用车厢的过程并加上一些辅助图形完成整副火车

拼接的过程中,同样要注意,每个过程中海龟的起点在什么位置,终点在什么位置,下一个部分要从什么位置开始,怎样将海龟移到正确的位置。

具体拼接过程如下:

TO HUOCHE

CS HT PU LT 90 FD 100

PD RT  90 CHEXIANG FD 10

REPEAT 2[FD 40 LT 90 FD 60 LT 90]

FD 10 YUAN FD 20 YUAN FD 10

LT 90 FD 60 LT 90

pc logo 试题

http://hi.baidu.com/waterworld1982/blog/item/85b111544fd005193a2935e0.html

一,选择填空:(每空1分,共16分)

(1)进入LOGO的命令是 _______ .

A. LOGO B. DRAW C. 键盘 D. 显示器 E. 鼠标 F. 中央处理器

(2)在编辑过程时,输入上档符号,如+号时,要用_________键,换行时要用 ______ 键,把光标快速移到行尾,要用

______ 键,前翻一页,要用______ 键,退出编辑,回到图文混合显示方式时,要用 ______ 键.

A. F2 B. END C. SHIFT D. 回车键 E. HOME F. PageUp

(3)任何时候都能和 DRAW 起同样作用的是命令组 ______ ,海龟在母位时,能和SETX XCOR+40 起同样作用的命令组是

______ ,能画出正方形的命令组是 ______ .

A. SETX 100 SETY 100 SETY 100 SETX 100

B. SETX 100 SETY 100 SETX 0 SETY 0

C. ST PD SS HOME

D. ST PD SS CS

RT 90 FD 40 LT 90

LT 90 FD 40 RT 90

(4)下列命令的简写形式是:

HOME _____ PENDOWNU _______ RIGHT ________ FORWARD _________

FULLSCREEN ________ SETXY __________ SHOWTURTLE ___________

A. FD B. FS C. RT D. PD E. ST F. 没有简写

二,填空:(每空1分,共14分)

(1)写出命令的名称:BK ____ LT _____ PU _____ HT ____ CS ______.

(2)LOGO系统提供了三种屏幕显示方式,它们是_______ ,_______和 ________ .

(3)LOGO系统提供了两种执行方式,它们是 ______ 和 ________ .

(4)背景的命令是_____,笔色的命令是_____,填充颜色的命令是_____

(5)改变笔的粗细命令是:___________

三,根据过程画出对应图形:(每题3分,共18分)

(1) TO A1

HT FD 60 LT 90 FD 20 RT 120 FD 60 RT 120

FD 60 RT 120 FD 20 LT 90 FD 60 RT 90 FD 20

END

执行 A1

(2)TO A2

REPEAT 5 [ LT 18 FD 50 RT 90 ]

END

执行 A2

(3)TO A3

REPEAT 4 [ REPEAT 3 [ FD 20 RT 90 FD 60 RT 90 ] LT 90 ]

END

执行 A3

(4)TO A4

DRAW REPEAT 4 [ A5 RT 90 ]

END

TO A5

FD 98 RT 135 FD 40 RT 45 FD 40 RT 45 FD 40 RT 135

END

执行 A4

(5)TO A6 :N

REPEAT :N [ FD 40 RT 360/:N ]

END

TO A7 :N

REPEAT 4 [ A6 :N+1 FD 40 ] HT

END

执行 A7 3

(6)TO A8 :Y

DRAW HT

LT 90 A9 :Y RT 90 A9 :Y

SETY -100 SETY YCOR+60

LT 90 A9 :Y/2

RT 90 A9 :Y/2

END

TO A9 :Y

REPEAT 2 [ REPEAT 9 [ RT 5 FD :Y*0.174 RT 5 ] RT 90 ]

END

执行 A8 60

四,根据图形完成下列过程:(每题3分,共12分)

(1)TO LX

REPEAT _____ [ FD 40 RT 60 FD 40 RT _____ ]

END

TO EX1

HT LT _____

REPEAT _____ [ LX RT _____ ]

END

(2)TO DD

REPEAT 2 [ RT 90 FD 20 LT 90 FD 20 ]

END

TO EX2

DRAW HT

REPEAT ____[DD ___________]

END

执行:EX2

(3) TO EX3

(STAMPOVAL 40 40 true)

REPEAT 12[_____________________________RT 30]

END

(4) TO EX41

fd 40 rt 90 fd 40 rt 90

fd 20 rt 90 fd 20 rt 90

fd 40 rt 90 fd 10 rt 90

fd 10 rt 90 fd 20

END

TO EX4

REPEAT ______[EX41 __________]

END

执行:EX4

五,根据图形填写完整程序:(每题5分,共10分)

TO EX51

REPEAT 27[RT 5 FD 0.174*60 RT 5]

END

TO EX5

REPEAT ___[EX51 LT __________]

END

执行:EX5

TO EX52

REPEAT ___[REPEAT 3[FD 30 RT 120]RT _____]

END

执行:EX52

六,编写一个过程执行不同参数画出相对应的图形:(共10分)

七,编写一个动画,让海龟在半圆轨道上左右来回爬行.(等待时间为10秒)(共20分)

要求:带一个变量,输入10秒,则整个动画运用10秒,输入15秒,则整个动画运用15秒,以此类推.

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值