版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、Logo语言简介 Logo语言是在1967年,由麻省理工学院人工智能实验室西摩尔帕伯特,专为孩子设计出的一种电脑语言。它非常适合小学生学习,采用儿童十分喜爱的积木拼图方式,通过海龟绘图来学习编制程序的一般方法,培养学生的逻辑思维和创造才能。Logo语言非常接近人类自然语言,它提供结构化程序设计,模块化的过程编程和调用,以及程序的递归调用;同时它所包含的参数、变量、带参过程等重要概念以及丰富的数据结构类型,生动的图形处理功能,为孩子们提供了非常好的编程环境,为学习更高级的计算机程序设计语言打下了良好基础。Logo语言学习的定位应是: 学会初步设计程序,启迪学生创造性的思维;重点在于培养学生解
2、决问题的思维方法。Logo语言,不是绘图工具。 学生在完成任务时有三种方法:A、逐步控制小海龟按照设定的线路行走完成;B、通过不同的方形,搭积木方式完成;C、定义一个带参数的子程序,多次调用完成; 三种方法都能完成,学生的步步操作就是Logo语言的算法,而一连串操作的组合的优化就是算法的精髓。 学生在分析、组合,以及搭积木构建新模型的操作中无形之中掌握了算法。 小学Logo语言程序设计教材:包括了Logo的认识与启动、简单作图命令、重复命令、彩色绘图、过程设计等教学内容。 教学Logo过程的建立和调用,是小学程序设计教学的重点内容,也是教学中的一个难点。 二、教材分析海龟命令集锦后面不需要带数
3、字的命令HT藏龟ST显龟 PU提笔 PD落笔 PE 笔擦 DRAW 屏幕初始化 CS 清屏,回家 HOME 回家 CT 清命令窗口后面需要带数字的命令 FD前进 SETW 设置笔粗 BK后退 PLAY 演奏 LT左转 PR计算输出 RT右转REPEAT 重复SETBG 设背景色SETPC 设笔色SAVEPIC 保存图形LOADPIC 出图形STAMPREC 矩形命令STAMPOVAL 椭圆命令SS 图文混合屏 FS 全图形屏 TS 全文字屏 ND 全文字屏、清屏STOP 停止FILL 填色RANDOM随机数命令WAIT等待命令TELL激活命令TELLALL同时激活命令MAKE赋值命令READ键
4、盘输入命令IF条件命令STOP停止命令更多LOGO知识2)全屏图形显示与全屏文字显示屏幕显示方式命令(全称)功能键图文混合显示方式SS ( SPLITSCREEN )F2全屏幕图形显示方式FS ( FULLSCREEN )F4全屏幕文字显示方式TS ( TEXTSCREEN )F31)海龟的边界 633473 海龟步 633 = 319(右)+ 314(左) 473 = 234(上)+ 239(下) 注意:图文混合显示时,图屏的下部被命令屏遮住了 不准越界命令: FENCE 恢复环绕命令: WRAP认识小海龟(五)落笔命令格式:PD功能:命令海龟降落,继续画图,它的位置和头的方向同落笔前一样。
5、(四)抬笔命令格式:PU功能:命令小海龟起飞,头的方向保持不变,移动时不再留下痕迹。FD 100 FD +100 FD -10 fd 20*53)在LOGO语言中,命令与数据之间是以空格分隔的。如,在输入的前进命令和步长之间必须用空格分 隔。输入的LOGO命令既可以是大写字母,也可以是小写字母,前进、后退等命令需要的数据既可以是具体数值,也可以是一个算式,清理屏幕命令的比较清屏命令1格式: DRAW功能: 清空绘图窗口,小海龟回到原点,恢复到刚进入LOGO时的状态。清屏命令2格式: CS功能: 清空绘图窗口,小海龟回到原点,头朝上。海龟画图基本命令学习复位与清屏命令CLEAN 清屏功能:清除绘
6、图屏幕,但不影响海龟指向和位置。(六)笔擦命令格式:PE功能: 小海龟变成橡皮,边走边擦掉以前留下的痕迹。 清屏命令3清屏命令4例FD 100 PE BK 50CS FD 80 FD 100 PE BK 50DRAW FD 80画出一条长为80海龟步的直线比较下列命令执行结果的异同。画不出图形笔擦命令格式:PE功能: 小海龟变成橡皮,边走边擦掉以前留下的痕迹。CS FD 100 PEBK 100 执行PE命令后,龟笔颜色就变成当前的背景色了,如果想继续用原来的笔色画图,就要执行落笔命令(PD)。FD 100PE BK 50FD 80FD 100PE BK 50PD FD 801)海龟的坐标 几
7、个特殊点的坐标:母位(0,0)、右上角(319,234)、左上角(-319,234) 右下角(319,-239、左下角(-319,-239) 海龟的指向: 注意:向上的方向为0度方向, 从原始方向顺时针转到现方向得正角度值、从原始方向逆时针转 到现方向得负角度值,同一指向的正、负角度值相加得360度海龟画图基本命令学习(七)海龟指向与指向查询命令1.测量海龟现位置的命令:XCOR检查海龟横坐标 返回X值YCOR检查海龟纵坐标 返回Y值GETXY检查海龟横、纵坐标 返回X、Y值2.测量海龟现指向的命令:HEADING检查海龟指向的正的角度值3.指定海龟新位置的命令:SETX :X横移海龟到 :X
8、 处 (画横线用)SETY :Y纵移海龟到 :Y 处 (画竖线用)SETXY SE :X :Y 或 SETXY :X :Y 移动海龟到( :X :Y )处 (画斜线用)4.指定海龟新指向的命令:SETH :D 把海龟指向定到 :D 度方向 使用 SETX、SETY、SETXY SE 命令产生的结果和海龟原来的位置有关 使用 SETH 命令产生的结果与海龟原来的方向无关 它们和 FD、BK, RT、LT 都同样可以改变海龟的位置、指向,但方式不同。2) 绝对命令与相对命令联系举例:右移50步: SETX XCOR+50上移50步: SETY YCOR+50左移50步: SETX XCOR-50下
9、移50步: SETY YCOR-50顺时针转45度:SETH HEADING + 45逆时针转45度:SETH HEADING - 45绝对命令与相对命令联系举例: 相对命令绝对命令改变海龟的位置FD、 BKSETX、 SETY、 SETXY SE改变海龟的指向RT、 LTSETH(一)计算输出命令格式1:PR A功能:如果A是数字,直接显 示A;如果A是算式,显示A的结果。? PR 2+3-14? PR 4*520? PR 6/(2+1)2? PR 28*76/22-1284.73? 格式2:PR 输出内容功能:原样显示输出内容。格式3:(PR 内容1 内容2 )功能:显示多个输出内容。如果
10、,内容外有方括号,则原样显示输出内容;若内容外没有方括号,则显示结果。? PR 12+112+1? PR 12+113?(PR 12+1= 12+1)12+1=13TURTLETEXT 文字打印命令语法:TURTLETEXT(TT) 字或表功能:TURTLETEXT在图形窗口上海龟所在处打印其输入参数。TURTLETEXT以海龟当前的笔色进行打印。当海龟的笔抬起时,TURTLETEXT没有任何作用。例子:?TT PC LOGO?TT PC LOGO在海龟处以当前笔色打印PC LOGO字样。海龟画图基本命令学习 TT 在画图区显示文字 格式:REPEAT N 需要重复的命令 空格 重复的次数功能
11、:把方括号里的命令重复执行N次。注意:方括号里的重复内容的所有命令必须写成一行,命令间用空格隔开。REPEAT 3FD 100 RT 360/NDRAW RT 90REPEAT 5FD 100 RT 180-180/5边长是100的正N角星(奇数)REPEAT 5FD 100 RT 180-180/N边长是100的正N边形边长是100的正五角星注意:重复次数应是整数,如果输入是小数,LOGO将自动四舍五入 2)重复的嵌套 重复命令里再套重复命令,可以画出更复杂、更丰富的图形画风车REPEAT 4REPEAT 2FD 60 RT 90 FD 20 RT 90 RT 90作图要领:(1)找出基本部
12、件(相同或相似的图形元素),写出若干基本子过程(2)弄清各基本部件中,海龟的起始位置、指向和结束位置、指向(3)组合全图,根据(2)写出调整命令(调整位置、指向)(4)把图形的其它部分补全例1: 试画出下图的花环。TO HUAREPEAT 4REPEAT 3FD 10 RT 120 RT 360/4ENDTO HUAHUAN DRAW HT SETPC 5 REPEAT 10HUA RT 360/10 PU FD 25 PDEND(画一个由10朵花组成的花环)(画一朵由4个三角形组成的花)赋值和键盘输入命令赋值命令格式:MAKE 变量名 表达式 空格功能:把表达式的值赋给指定的变量。键盘输入命
13、令格式:READ功能:等待从键盘输入数据1)变量:变量就是可以变化的量。LOGO规定(1)变量名是字母打头的字母数字串, (2)变量名前必须要加上一个冒号:2)带变量的过程:过程可以带一个或多个变量,一律写在过程名后面: 格式: TO 过程名 所带变量 命令组 END条件命令条件命令(格式1)格式:IF 条件 THEN 命令功能:如果条件成立,就执行“THEN”后面的命令,接着再执行其它命令;如果不成立,就不执行“THEN”后面的命令,而直接执行其它命令。条件命令(格式2)格式:IF 条件 THEN 命令1 ELSE 命令2功能:如果条件成立,就执行“命令1”,再接着执行“其它命令”;如果不成
14、立,就不执行“命令1”,而直接执行“命令2”,再执行其它命令。 “IF”就是“如果”的意思,“THEN”是“那么”的意思,“ELSE”是“否则”的意思。TO JIAO :nCS RT 90 FD 100 BK 100 LT :n FD 100 HTENDTO PANDUANPR 请输入角度:MAKE R READJIAO :RIF :RREPEAT 3FD 50 RT 120ENDSANJIAO defined.?单击工具栏里的按“F2”键(二)使用编辑窗口二、调用过程三、保存过程(一)窗口方式(二)命令方式保存过程命令格式:SAVE “文件名 功能: 把当前工作区已经定义过的所有过程按指定文
15、件名存盘。四、取出过程(一)窗口方式(二)命令方式取出过程命令格式:LOAD “文件名 功能:打开指定的过程文件,这个文件中的所有过程均可被调用。小 结过程管理(一)例、会转动的风车原理:先画一个风车四只小海龟一起画,每只画一个扇叶;停留一会儿,用“笔擦命令”擦掉;然后小海龟集体转动一个小角度;再画一个一样的风车;再擦掉。(一)过程SHANYE(画一片扇叶)TO SHANYE :aSETW :aFD 40REPEAT 2FD 60 RT 90 FD 30 RT 90BK 40ENDTO ZHUANDONG SHANYE 1WAIT 10PE SHANYE 2ENDTO FENGCHE :nDR
16、AW HTTELL 1 RT 90TELL 2 RT 180TELL 3 RT 270TELLALL 0 3REPEAT :nPD ZHUANDONG RT 20PD SHANYE 1END(二)过程ZHUANDONG(形成转动效果)(三)过程FENGCHE (画转动风车)FENGCHE 20运行过程FENGCHE 递归和尾递归 过程自己调用自己就叫递归,形式上的特点是:在本过程中出现本过程名。 最简单的递归叫 尾递归 。特点是在且仅在过程的最后一句出现本过程名。 (一) TO 过程名 :变量名 命令组(或称过程体) 本过程名 :变量名 END(二) TO 过程名 :变量名 IF 条件表达式
17、结束命令组 命令组 本过程名 :变量名 END尾递归的格式: 这样的尾递归程序一旦开始执行,就不会结束。我们可以用 CTRL+BREAK 中止运行, CTRL+Z 暂停运行,暂停后用命令 CONTINUE(简写为CO)恢复运行 可以用过程中某变量的变化控制尾递归何时结束也可以专设一个变量控制尾递归何时结束。1、尾部递归、首部递归与中部递归。 递归调用语句出现在过程体的不同位置(尾部、头部或中间)分为尾部递归、首部递归和中部递归三种,后两者是较复杂。、例题4:画逐层减半(或增半)的正方形(如图)。? DRAW A4A 100? DRAW A4B 100TO A4B :S IF :S10 STOP
18、 A4B :S/2 REPEAT 4FD :S RT 90 PU FD :S PD END TO A4A :S IF :S10 STOP REPEAT 4FD :S RT 90 PU FD :S PD A4A :S/2END尾部递归过程:首部递归过程:2、多次递归过程。 在一个过程体中可以若干次调用其他过程,同样,在一个过程中也允许多次的递归调用。如果在过程体中进行了多次的递归调用,这个过程称为多次的递归过程。例题5:一条线段的变幻。? A5_1 100TO A5_1 :S FD :S BK :SEND、二次递归过程、画线段TO A5_2 :S :J IF :S10 STOP FD :S LT
19、 :J/2 A5_2 :S/2 :J RT :J A5_2 :S/2 :J LT :J/2 BK :SEND? A5_2 80 703、直接递归与间接递归过程 如果一个递归过程在过程体中直接调用自己,我们就称这种直接调用自身的递归调用为直接递归调用,相应的过程称为直接递归过程。TO A1 :N IF :N1 STOP FD 50 REPEAT 3FD 30 RT 120 BK 20 RT 60 A1 :N-1END请看例题1:?DRAW A1 6 如果一个递归过程在过程体中并不直接调用自己过程,而是通过调用一个或几个其它过程,最后调用回自身过程,这种通过调用其它过程来实现了递归调用的方法,我们
20、称为间接递归调用,相应的过程则为间接递归过程。请看例题2:TO A2 :N IF :N1 STOP B2 :NENDTO B2 :N FD 50 REPEAT 3FD 30 RT 120 BK 20 RT 60 A2 :N-1END? DRAW A2 6 ? DRAW B2 6 再看例题3:TO A3 :N :B IF :N1 STOP ZFX :B LT 165 WAIT 50 B3 :N-1 :B+10ENDTO B3 :N :B IF :N1 STOP SJX :B RT 165 WAIT 50 A3 :N-1 :B+10END? DRAW A3 10 20 ? DRAW B3 10 2
21、0 另一类的过程为各自的过程体都构成递归形式,而则通过相互之间的调用方法来实现递归,我们也称之为间接递归调用,相应的过程称为间接递归过程。三、画出更奇妙的图形 递归的功能很强,许多非常复杂的图形,实际上是用几行相当简单的过程画出来的。欣赏这些美妙的图形,更会激起我们探求知识奥秘的强烈欲望。1、分割多边形TO FGDBX :N :S DRAW HT FG :N :SENDTO FG :N :S IF :S10 STOP REPEAT :NFD :S RT 180-(:N-2)*180/:N FG :N :S/2END ?FGDBX 3 160 ?FGDBX 4 100 ?FGDBX 6 602、
22、花团锦簇TO HTJZ :N :S IF :S120时,演奏速度较快,当n120时,演奏速度较慢。演奏一曲编写过程SHENGRIGE,演奏下面的曲子。| 5 5 6 5 | 1 7 | 5 5 6 5 | 2 1 | | 5 5 5 3 | 1 7 6 | 4 4 3 1 | 2 1 |答案:TO SHENGRIGEPLAY T150 L8 G G L4 A G O4 C O3 L2 BPLAY L8 G G L4 A G O4 D L2 CPLAY L8 G G L4 O4 G E L8 C O3 B L2 APLAY L8 O4 F F L4 E C D L2 CEND海龟画图基本命令学习
23、截取与粘贴图形命令SNAP 截取与粘贴图形命令语法:SNAP x坐标 Y坐标功能:SNAP将屏幕上一定范围内的图形存入位图中。海龟的位置标志着左下角,X和Y输入描述了图形的大小。SNAP输出一个可以存储,调用或粘贴的位图对象。例子:? MAKE “A SNAP 50 50(将海龟所在位置坐标(50,50)的矩形框内的图形存入变量:A)STAMP 粘贴图形语法:STAMP 位图 (STAMP 位图 x坐标 y坐标)功能:STAMP在当前海龟所在位置显示一幅由SNAP命令创建的位图。海龟所在处为图形的左下角。若STAMP命令置于括号内,你可给位图提供高度和宽度(均以“步”为单位),使位图经过调整后
24、在指定区域显示出来。例子:?DRAW STAMP :A (在坐标(0,0)处显示由SNAP命令截取的位图。)海龟画图基本命令学习椭圆和矩形命令STAMPOVAL 椭圆语法:1)STAMPOVAL 数 数 2)(STAMPOVAL 数 数 TRUE)功能:STAMPOVAL在当前海龟周围画出一个椭圆。它的第一个输入参数为该椭圆在水平方向上的轴径,第二个输入参数为该椭圆在垂直方向上的轴径。若两个参数相等,STAMPOVAL画出一个圆。若STAMPOVAL其输入参数和值TRUE全都置于括号中,则所画的椭圆将以当前的图案,用当前的笔色填充起来。例子:? DRAW? STAMPOVAL 50 30? D
25、RAW?( STAMPOVAL 30 30 TRUE)STAMPRECT 矩形语法:1)STAMPRECT 数 数 2)(STAMPRECT 数 数 TRUE)功能:STAMPRECT以它的第一个输入参数为高,第二个参数为长画一个矩形,海龟当前的位置的左下角。当两个输入参数相等时,STAMPRECT画出一个正方形。若STAMPRECT其输入参数和值TRUE全都置于括号中,则所画的椭圆将以当前的图案,用当前的笔色填充起来。例子? STAMPRECT 50 30海龟画图基本命令画点命令DOT画点语法:DOT x坐标 y坐标功能:DOT在由其输入坐标所决定点坐标的位置处打印一个点。点的颜色就是当前的
26、笔色。DOT需要一个由两个数组成的表作为它的输入。由于DOT不会对其输入表的内容进行计算,因此输入表必须包含两上数。如果使用变量来记录X和Y坐标,使用SENTENCE(SE)来合成DOT的输入表。例子:?DOT 30 60 (在X为30,Y为60处画点。)DOTCOLOR 显示点的颜色号语法:1)DOTCOLOR X坐标 Y坐标 2)(DOTCOLOR)功能:DOTCOLOR 输出在输入的点坐标处的象素的颜色。颜色由一个从0到15或255的数(分别对应于BACKGROUND或(PENCOLOR)决定。或(DOTCOLOR)的括号内无参数,则输出海龟所在处的象素的颜色。例子:?(DOTCOLOR
27、)Result:15海龟画图基本命令学习定向命令海龟定向命令SETHEADING(SETH) 海龟转到指定的方向语法:1)SETHEADING 数 2)SETH 数功能:SETHEADING将海龟转至其输入指定的角度位置上。正数使海龟顺时针旋转。SETHEADING对海龟的旋转操作是相对于海龟的初始角度(即HEADING 为0),而并非相对于当前海龟的指向。不论海龟指向那个方面,SETHEADING 0总是使海龟指向正上。TOWARDS 输出海龟当前的指向与指定点的夹角语法:TOWARDS X坐标 Y坐标功能:TOWARDS输出一个值,表示海龟的指向从当前位置转向由命令的输入表指定的新位置所需
28、旋转的角度。SETHEADING TOWARDSx坐标 y坐标使海龟指向输入表中指定上的位置。例子:? setxy -50 -50 ? seth towards 0 0执行上述两命令后,TOWARDS0 0转角为45o,因此海龟要右转45o。FD 前进 BK 后退 RT 右转 LT 左转 PU 抬笔 PD 落笔 HT 藏龟 ST 显龟 CS 清屏 HOME - 回家 REPEAT - 重复 SS 图文混合屏 FS 全图形屏 TS 全文字屏 ND 全文字屏、清屏 WRAP - 环绕状态 WINDOW - 窗口状态 FENCE - 围栏状态 SHOW - 屏幕输出 TT - 在画图区显示文字 TOEND - 过程头、尾 IFTHENELSE PAUSE CO ALL - 进入编辑部 STOP - TOPLEVEL - SETPC - 设置画笔颜色 SETBG - 设置屏幕底色 坐标作图 SETX - 指定海龟横向位置 SETY - 指定海龟纵向位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高二政治必修4“用联系的观点看问题”教学设计
- 高三思想政治复习课教学设计:中国特色社会主义进入新时代与中国梦
- 初中语文八年级下册第六单元写作《负责任地表达》教学设计
- 小学三年级道德与法治教学设计:科技力量大第2课时
- 小学道德与法治一年级下册“9这是我的家”第2课时家庭成员与亲情关系教学设计
- 浙江省上半年主治医师妇产科专业实践能力考试试题
- 2024-2025学年湖北省十堰市八年级(下)期末数学试卷及答案
- 幼儿园教师国家级培训计划方案
- 2026年夏季饮料销售代理合同模板三篇
- 2026年辽宁省九年级政治第10课经济制度与经济体制改革同步练习题
- 初中语文九年级微专题教案:基于SOLO分层评价的文学类文本主旨探究教学设计
- 2026年建筑三类人员安全员c证考试题库及答案
- 2026年临床执业助理医师资格考试真题试卷含答案
- 2026电动重卡换电模式推广障碍与基础设施需求报告
- 心房颤动防治科普课件
- 2026年新教师备课说课评课指导课件
- 食材配送卫生安全管理制度
- 部编版语文六年级上册第二单元-习作:多彩的活动-课件(共33张课件)
- CJT 288-2017 预制双层不锈钢烟道及烟囱
- 护理学基础(高职)全套教学课件
- 三角函数在音乐、艺术中的体现及其教学
评论
0/150
提交评论