《Logo程序设计语言.doc》由会员分享,可在线阅读,更多相关《Logo程序设计语言.doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Logo程序设计语言LOGO语言是一种早期的编程语言,它通过“绘图”的方式来学习编程,LOGO语言是中小学生十分喜爱的一种计算机程序设计语言,它里面有一个绘画能手小海龟。小海龟本领高强,会唱歌、会画画,多才多艺。我们可以指挥小海龟在屏幕上画出丰富多彩的图画,奏出美妙动听的音乐。你是不是想和神通广大的小海龟交朋友? LOGO语言的概述 LOGO语言创始于1968年,是美国国家科学基金会所资助的一项专案研究,在麻省理工学院(MIT)的人工智能研究室完成。LOGO源自西腊文,原意即为思想,是由一名叫佩伯特的心理学家在从事儿童学习的研究中,发现一些与他的想法相反的教学方法,并在一个假日中出外散步时,偶
2、然间看到一个像海龟的机械装置触发灵感,于是利用他广博的知识及聪明的才智而最终完成了LOGO语言的设计。佩伯特博士就是希望能通过绘图的方式来培养学生学习电脑的兴趣和正确的学习观念。LOGO语言的基本命令下面介绍一些LOGO语言中最基本的绘图命令:1.与移动有关的指令:“前进FD”、“后退BK”和“归位HOME”。前进命令可让海龟前移一定的单位数,例如:执行“Forward(前进) 50”命令后,小海龟则会向前移动50个单位;后退命令则可让小海龟向后移动,如果执行“Back(后退) 50”命令,那么小海龟的方向不会发生改变,而会向后退50个单位;执行归位命令后,不论当前小海龟的位置及方向怎样,它就
3、会乖乖地回到绘图区的中央位置,并且朝向屏幕的正上方。2.与转弯有关的指令:“右转RT”和 “左转LT”。右转命令可让小海龟按要求向右边转动一定的角度,例如:执行“Right(右转) 45”命令则小海龟的朝向将向右转动45度角;而左转命令则可让小海龟向左转动,如:执行“Left 45”命令则小海龟的朝向将向左转动45度角。这几种命令可以驱动小海龟绕其中心旋转一定的角度。3.与控制有关的命令有REPEAT(重复)、IFTHENELSE(条件执行)等。如执行REPEAT 4FORWARD 200 RlGHT 9O就能画出图2中的正方形,如果直接将移动命令和转弯命令相结合,则写出的语句就比较多,但都是
4、一些重复地使用4次“Forward 100”和“Right 90”命令。LOGO语言的特点 LOGO语言之所以是儿童学习计算机编程最好的一种语言,就因为它是针对儿童而制作的编程语言,能使儿童在认知与技能上得到较大的发展。LOGO语言具有较强的针对性,因为对于儿童来说,“画画”比“文字处理”更具有活力,充分发挥自己的想象进行创作,在LOGO语言中,它的作图方式与现在所用的作图软件不一样,主要区别就在于LOGO语言的基本作图的方法可以不采用坐标方式,而是通过向前,后退、向左转、向右转、回家等儿童易于理解的语言和命令,这非常适合儿童的知识水平,使这些还未接触坐标为何物的儿童更容易上手。在用LOGO语
5、言作图时,需要学习者对一些常见的几何特性进行理解,了解常用的距离、角度和度数的概念。=Logo语言命令讲解在LOGO语言中,输入命令就被立即执行,通常称之为“立即方式”,或“命令方式”。1前进命令FORWARD(简写FD)【格式】FD 步长 【功能】命令小海龟按当前方向前进指定的步长。【说明】 在LOGO语言中,命令与数据之间是以空格分隔的。如,在输入的前进命令和步长之间必须用空格分隔。 小海龟移动时,要特别注意它的当前位置和方向,当前方向就是它的头所指的方向。 让小海龟移动时,是通过步长的长短来控制机器人前进的距离。 步长的具体值就是指距离的长短(小海龟的默认值为每1个步长为0.5厘米)。如
6、FD 100中步长值为100,是让小海龟前进50厘米。 输入的LOGO命令既可以是大写字母,也可以是小写字母,【应用】 前进100步: 命令方式:FD 100 过程方式:TO QJ FD 100 END2后退命令BACK(简写BK)【格式】BK 步长 【功能】命令小海龟按当前方向后退指定的步长。【说明】 让小海龟移动时,是通过步长来控制小海龟后退的距离。 小海龟移动时,要特别注意它的当前位置和方向,后退方向就是它的头所指的反方向。 步长的具体值就是指步长的长短(小海龟的默认值为每一步长为0.5厘米)。 前进、后退等命令需要的数据既可以是具体数值,也可以是一个算式,小海龟会自动计算算式,再按计算
7、的结果完成任务。在计算机中加号、减号、乘号、除号分别用“+”、“-”、“*” 、“/”符号表示。【应用】 后退100步: 命令方式:BK 100 过程方式:TO HT BK 100 END 3左转命令LEFT(简写LT)【格式】LT 角度 【功能】命令小海龟向左(逆时针) 转动指定的角度。【说明】 让小海龟转动时,是通过角度的值来控制小海龟向左转动的角度。LOGO语言中LT 180,此命令的是让小海龟左转180度。【应用】 向左转动90度: 命令方式:LT 90 过程方式:TO ZZ LT 90 END4右转命令RIGHT(简写RT)【格式】RT 角度 【功能】命令小海龟向右(顺时针) 转指定
8、的角度。【说明】 让小海龟转动时,是通过角度的值来控制小海龟向右转动的角度。LOGO语言中RT 90,此命令的意思是小海龟右转90度。【应用】向右转动90度: 命令方式:RT 90 过程方式:TO YZRT 90END 5时间命令WAIT 【格式】 WAIT 时间 【功能】 等待一段时间。【说明】 在让小海龟运动时,可以通过时间命令,调整两个命令间的等待时间。WAIT 1000 此命令是将等待时间设为1000毫秒(1秒)。【应用】 前进100步,等待1秒: 命令方式:RT 90 过程方式:TO DDFD 100 WAIT 1000END6初始化命令DRAW 【格式】 DRAW【功能】将LOGO
9、语言系统恢复为启动时的初始状态。【说明】 初始化命令,将系统恢复为启动时的初始状态。 初始化命令,是一个无参数命令。 系统启动时默认为初始状态,可以省略。7落笔命令PD 【格式】PD 【功能】命令小海龟落下“画笔”,小海龟就又可以画图了。 落笔命令在“仿真”运行时可以使用,落笔后,小海龟移动时可以留下移动的轨迹。 安装了画笔模块,小海龟就会有一支真正的画笔,这时落笔命令才有作用。 落笔命令PD后面没有参数。 落笔命令要与抬笔命令配合使用,当小海龟处于抬笔状态时,移动不会留下痕迹,只有输入落 笔命令,小海龟移动时可以留下移动的轨迹。【应用】 小海龟落下画笔,前进100步: 命令方式:PD 过程方
10、式:TO DDPD FD 100 END 8抬笔命令PU 【格式】PU 功能】命令小海龟抬起“画笔”,小海龟再移动时,就不会留下痕迹了。【说明】 抬笔命令在“仿真”运行时可以使用,系统默认为抬笔状态。 小海龟安装了画笔模块,小海龟就会有一支真正的画笔,这时抬笔命令才有作用。 抬笔命令PU后面没有参数。【应用】小海龟落下画笔,前进100步,抬起画笔,前进100步: 命令方式:PU 过程方式:TO DDPD FD 100 PU FD 100 END9重复命令REPEAT【格式】REPEAT重复次数需要重复的命令 【功能】将方括号内的命令重复执行指定的次数。 使用重复命令的关键是要找准“需要重复的命
11、令”。画4条线就应重复4次,画一条线的命令就是“需要重复的命令”。 当某些命令需要反复执行多次时,用重复命令,可以简化命令的输入过程。【应用】 画正方形: 命令方式:REPEAT 4FD 100 WAIT 500 RT 90 WAIT 500 过程方式:TO ZFXREPEAT 4FD 100 WAIT 500 RT 90 WAIT 500END 10赋值命令MAKE 【格式】MAKE 变量名 表达式 【功能】 将表达式的值,赋给指定的变量。【说明】 “”表示赋值对象,后面是变量名。 表达式是赋值内容,执行赋值命令时先计算,然后将值赋给变量名表示的变量,如MAKE A 8*3/2,执行后A的值
12、就是12.。【应用】给变量赋值(前进200步): 命令方式:MAKE A 100 过程方式:TO QJMAKE A 100MAKE B :A+100 FD :B END 2条件转移命令1 【格式1】IF 条件表达式 THEN 命令组【功能】当条件表达式成立时,先执行THEN后面的命令,再执行下一行命令。当条件表达式不成立时,就直接执行下一行命令。【说明】 条件转移命令使机器人有了判断的能力。根据判断出的结果,小海龟有选择地进行下一步的工作。等于= 大于 小于 不等于 大于等于= 小于等于60 :X+25*2 :N=0 都是简单条件。 复杂条件: 由简单条件进行一些逻辑运算就是复杂条件。 逻辑运
13、算 :LOGO语言中逻辑运算符有三种:AND(与)、OR(或)、NOT(非),逻辑表达式的运算结果是一个逻辑值。逻辑运算结果如下:A AND :B 只有A 为真,B为真,逻辑表达式为真。:A OR :B A和B中只要一个为真,逻辑表达式为真。:NOT :N N为真,逻辑表达式值为假;N为假,逻辑表达式值为真。 在逻辑运算、关系运算、数学运算的组合条件判断中,必须使用括号来表明运算顺序。 各种数学运算的范围为:065535,不能超过。除法运算为整数除法,即取商。【应用】 躲避前方障碍物 过程方式:TO QBZFD 2 WAIT 2 IF :PIN5=0 THEN RT 90END 13条件转移命
14、令2 【格式2】IF THEN ELSE 【功能】当条件表达式成立时,执行THEN后面的“命令1”;当条件表达式不成立时,执行ELSE后面的 “命令2”。执行完命令1或命令2后,再执行下一条命令。【说明】 条件转移命令IF THEN ELSE 必须写在一行。【应用】 躲避前方障碍物 过程方式:TO QBZIF :PIN5=0 THEN RT 90 ELSE FD 2 WAIT 2 END14停止命令STOP 【格式】STOP 【功能】过程执行中遇到此命令,立即停止执行当前的过程。【应用】 躲避前方障碍物 过程方式:TO QBZFD 2 WAIT 2 IF :PIN5=0 THEN STOPEND