




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PC_LOGO课件资料讲义整理1LOGO语言简介LOGO语言是一种早期的编程语言,也是一种与自然语言非常接近的编程语言,它通过“绘图”的方式来学习编程,对初学者特别是儿童进行寓教于乐的教学方式。LOGO语言创始于1968年,是美国国家科学基金会所资助的一项专案研究,在麻省理工学院的人工智能研究室完成。第一讲LOGO语言简介LOGO语言是一种早期21、软件的安装2、界面简介了解标题栏、菜单栏、工具栏、绘图窗口、小海龟、命令窗口、提示符(?)、光标(|)、状态栏以及常见的工具按钮。3、了解窗口的各种显示方式以及切换方法LOGO语言中,可以用各窗口的最大化和还原命令改变窗口的显示状态,也可以用输入命令的方法改变窗口的显示状态(窗口界面视图的切换命令):FS(fullscreen)全图状态命令,即全图方式。SS(splitscreen)图文混合状态命令,即图文方式。TS(textscreen)全文本状态命令,即文本方式。第一讲Pclogo简介1、软件的安装第一讲Pclogo简介3
全图状态时,看不到从键盘上输入的任何命令,只能看到海龟画图区域。(但,此时,仍然可以通过键盘输入并执行命令)。这时输入SS命令,就可以回到图文混合状态了。LOGO语言命令可以使用简写,如FORWARD是前进命令,可以简写为FD。在小学教材中,一般使用的都是简写以便于学生记忆。再如LEFT是左转命令,简写为LT。RIGHT是右转命令,简写为RT。BACK是后退命令,简写为BK。LOGO命令不分大小写。第一讲全图状态时,看不到从键盘上输入的任何命令4简单的绘图命令FD(forward)参数前进BK(back)参数后退RT(right)参数右转LT(left)参数左转注意:命令和参数之间必须用空格分开,执行命令时必须按回车键。第一讲简单的绘图命令FD(forward)参数5退出软件的方法(1)使用BYE命令。(2)使用文件菜单中的“退出”命令。(3)单击窗口右上角的关闭按钮。第一讲退出软件的方法(1)使用BYE命6思考题1、DRAW命令有什么作用?(DRAW是初始化命令。使系统恢复到启动状态。效果是:清屏后,海龟归位,设置的属性全部初始化,即,海龟回到原点(又称源点或母位)位置,头向上,笔粗为1,笔色为黑色。例如:比较一下setw20fd40csfd50和setw20fd40drawfd50)2、小海龟只会一步步走路吗?怎样让小海龟飞一段路程再走呢?(PUPD命令)第一讲思考题1、DRAW命令有什么作用?第一7第2课涉及的几个命令PU(penup)抬笔命令让海龟把脚抬起来,移动时不画线。PD(pendown)落笔命令让海龟把脚落下,移动时画出线来。HT(hideturtle)藏龟命令ST(showturtle)显龟命令CLEAN清图命令。清除屏幕上的图形,海龟的状态不变。即,只清除屏幕上的图形,不改变海龟的位置和方向。(海龟不归位)。CS(clearscreen)清屏。清除屏幕上的图形,海龟回母位。但,设置的属性仍保留。例如:setw20fd40csfd50Draw初始化命令。使系统恢复到启动状态。效果是:清屏(绘图窗口)后,海龟归位,设置的属性全部初始化,即,海龟回到原点位置,头向上,笔粗为1,笔色为黑色。Home回家命令。使海龟回到母位。不清屏,海龟回到屏幕中心。(带线归位)。例如:fd60rt30fd40home可以利用带线归位的功能画图,例如:fd60rt90fd30homeCT(cleartext)清文本作用是:清除命令窗口所有文本,“?”提示符回到第一行。第一讲第2课涉及的几个命令PU(penup)抬笔命令让海龟把脚8思考一下怎么在画完图后,让小海龟不留痕迹回家,并保留屏幕上画好的图形?(PUHOME)CLEAN与DRAW命令有什么相同点和不同点?在学过的命令中,哪些命令后面需要参数,哪些命令后面不需要参数?小海龟已经能画出很多好看的图形了,但颜色单一,你能改变它吗?第一讲思考一下怎么在画完图后,让小海龟不留痕迹回家,并保留屏幕上9小经验修改错误的方法:在命令状态下,可以用键盘上的四个光标控制键来移动光标。如果发现命令有错误,首先将光标移到要删除的字符处,删除字符,再键入正确的字符。如果发现某个地方漏打了字符,例如,命令RT90在命令与数字之间忘记输入空格了,可将光标移到字符“9”前,按一下空格键,命令就变成了RT90了。小窍门:使用历史记录运行执行过的命令。在LOGO语言里,若把光标键移到已经执行过的命令上,回车,则可再次执行命令。例如:输入FD60RT90回车后,用上述方法再执行三次,看画出了什么图形。第一讲小经验修改错误的方法:在命令状态下,可以用键盘上的四个光标控10REPEAT重复命令重复命令格式:REPEAT重复次数[重复内容]练习:repeat2[fd40rt90fd80rt90]repeat36[fd10rt10]比较一下:repeat6[fd50rt60]与lt30repeat6[fd50rt60]第二讲REPEAT重复命令重复命令格式:第二讲11想一想不用重复命令怎样画正方形和长方形?用重复命令怎样画正方形和长方形?体会一下重复命令的好处。怎样用重复命令画正三角形?怎样画出顶点朝正上方的正三角形?画顶点朝正上方的正五边形呢?答案:lt18repeat5[fd60rt72]在画上面各正多边形时,你怎样根据多边形的内角和公式计算旋转角度?[先根据(n-2)*180算出内角和,再除以n算出内角,再用“180-内角”算出外角。旋转的角度就是外角的度数。]第二讲想一想不用重复命令怎样画正方形和长方形?第二讲12用重复命令画正多边形公式
观察下面的列表,可以发现,小海龟在画正多边形时,重复的次数与转角度数的乘积总是等于360度。
从表中可以看出,画正多边形时,转角的度数是正多边形的一个外角的度数。在画正多边形时只要用360度除以边数,就可以得到转角的度数。画正多边形的公式:REPEAT边数[FD边长RT360/边数]第二讲用重复命令画正多边形公式观察下面的列表,可以发现,小13小经验注意:在计算机语言中,除号是/乘号是*在画正多边形时,边数越多,边长就要越小些。否则画出的图形会出界导致错乱。第二讲小经验注意:在计算机语言中,除号是/乘号是*第二讲14练一练练习画一下正三角形、正方形、正五、六、七、八、九、十边形。想一想:画正七边形时,转角的度数怎么表示呢?第二讲练一练练习画一下正三角形、正方形、正五、六、七、八、九、十边15画圆如何用REPEAT命令画一个圆呢?(在LOGO语言中,通常采用画一个正36边形来近似画圆。我们画圆一般是根据确定圆心和圆的半径来画,如果圆的半径为r,那么圆的周长就是2πr。这样得到下面的式子:36×边长=2πr所以,边长=2πr÷36=πr÷18所以,画圆的公式为:repeat36[fd半径*0.174rt10]
有了这个式子,只要确定了圆的半径,就可以画出指定半径的圆了。例如:画一个半径为10的圆repeat36[fd3.14*10/18rt360/36]即repeat36[fd3.14*10/18rt10]或repeat36[fd10*0.174rt10]在LOGO语言中,圆周率π可以写成PI,系统默认是两位小数。所以,上面的语句也可以写成:repeat36[fdPI*10/18rt10]提示:若不指定半径,我们常常直接使用这样的命令画圆:repeat36[fd边长rt10]如:repeat36[fd10rt10]也可以使用这样的两次旋转,使画出的圆更平滑:repeat36[rt5fd10rt5]第二讲画圆如何用REPEAT命令画一个圆16小知识repeat命令是可以嵌套的。例如:repeat4[repeat36[fd10rt10]rt90]想一想:这个语句能画出什么图形?试一下。然后改变最外层的旋转角度和旋转次数,再试试。将用重复命令画的其它图形,加上外部的嵌套(重复次数自定),看看能画出什么图形。例如:repeat18[repeat5[fd80rt144]rt20]repeat12[repeat6[fd70rt60]rt30]repeat6[repeat6[fd70rt60]rt30]提示:当最外层的旋转次数与旋转角度的积是360的时候,正好会旋转一周。若积小于360呢?第二讲小知识repeat命令是可以嵌套的。17重复命令嵌套练习用重复命令嵌套完成下面的练习,要求旋转一周:1、用重复命令画一个圆,并旋转18次。2、用重复命令画一个正方形,并旋转6次。3、用重复命令画一个正八边形,并旋转8次。4、用重复命令画一个五角星,并旋转18次。第二讲重复命令嵌套练习用重复命令嵌套完成下面18重复命令嵌套练习(参见P35-36)用重复命令嵌套完成下面的练习,要求旋转一周:1、用重复命令画一个圆,并旋转18次。repeat18[repeat36[fd10rt10]rt20]或repeat18[repeat36[rt5fd10rt5]rt20]或repeat18[repeat36[rt5fd5rt5]lt20]2、用重复命令画一个正方形,并旋转6次。repeat6[repeat4[fd100lt90]lt60]或repeat6[repeat4[fd100rt90]rt60]3、用重复命令画一个正八边形,并旋转8次。repeat8[repeat8[fd50lt45]lt45]或repeat8[repeat8[fd50rt45]rt45]4、用重复命令画一个五角星,并旋转18次。repeat18[repeat5[fd120rt144]rt20]第二讲重复命令嵌套练习(参见P35-36)用19REPEAT命令使用范例setpc2repeat12[pufd40rt30pdrepeat3[fd40rt120]lt30pubk40rt30]setpc12repeat6[repeat2[fd30rt90fd60rt90]rt60]第二讲REPEAT命令使用范例setpc2repeat1220REPEAT命令使用范例setw5setpc2repeat6[lt45repeat4[repeat9[fd10rt10]repeat9[fd10lt10]rt90]rt105]或setw5setpc2repeat6[lt45repeat4[repeat9[fd5rt10]repeat9[fd5lt10]rt90]rt105]第二讲提示:用重复命令画弧的公式:REPEAT圆心角度数/10[FD半径*0.174RT10]一般可以这样:REPEAT圆心角度数/10[FD10RT10]REPEAT命令使用范例setw5setpc2rep21思考REPEAT命令中的中括号可以缺少一个吗?利用重复命令,怎样画出下图呢?第二讲思考REPEAT命令中的中括号可以缺少一个吗?第二讲22参考答案repeat4[fd60bk60rt90pufd20lt90pd]第二讲参考答案repeat4[fd60bk60rt9023改变笔色和背景色改变笔色:可以通过工具栏的按钮改变笔色。也可以使用命令:setpc颜色代码(0~15)背景色也可以改变,大家试试用工具栏改变背景色。用命令是:setbg颜色代码(0~15)从工具栏中,单击改变颜色按钮,打开颜色列表。看看各颜色的代码。记一下。第三讲改变笔色和背景色第三讲24颜色代码表第三讲颜色代码表第三讲25填充颜色命令FILLFILL填充颜色命令。使用该命令时,必须先使小海龟抬笔走进要填充颜色的封闭图形中,然后落笔再执行该命令。例如:setpc12setbg14repeat4[fd100rt90]purt45fd30pdfill第三讲填充颜色命令FILLFILL填26小知识
给带有边色线的图形填充不同的颜色,命令格式为:(FILL图形线的颜色)注意:一定要有括号。例如:setpc12(设笔色为浅红)repeat4[fd100rt90];画出一个边线色为浅红色的正方形rt60pufd40pdsetpc14
;设笔色为浅蓝(fill12);在浅红边框的正方形内填充浅蓝色第三讲小知识给带有边色线的图形填充不同的颜色,命27想一想下面的第二条语句能画出什么图形?若想给画出的图填色,横线上应该写什么语句?drawsetw5repeat36[fd15rt10]rt90pufd30pdsetpc12________________(FILL0)第三讲想一想下面的第二条语句能画出什么图形?若想给画出的图填色,横28反笔命令(PX)与笔擦命令(PE)反笔命令不太常用,略。请课后自已阅读P18页内容。PE(PENERASE)笔擦命令。例如fd60pebk60请自由阅读教材P19-21第三讲反笔命令(PX)与笔擦命令(PE)反笔命令不太常用,略。29练习(P214)先想一想,下面语句能画出什么图形?然后画一下。REPEAT4[REPEAT4[FD50RT90]RT90]画出上面图形后,若想擦除所画的图形,应该输入什么命令呢?PEREPEAT4[REPEAT4[FD50RT90]RT90]当然,也可以先输入PE,回车后,再把光标定位在上面的语句上,再回车。第三讲练习(P214)先想一想,下面语句能画出什么图形?然后画30想一想如何使用PE命令画一条虚线?
可参考下面语句:FD150PUBK20PEBK20PUBK20PEBK20PUBK20PEBK20PUBK20PEBK20注意:执行语句后若再想画线,必须先执行落笔命令。
也可参考下面语句:
FD20PUFD20PDFD20PUFD20PDFD20PUFD20PDFD20PUFD20PD第三讲想一想如何使用PE命令画一条虚线?可参考下面语句31设置笔宽命令格式:SETWN即,SETW笔宽值(N是笔头型号,也就是笔宽的值。取值范围是1~999值越大画出的线越粗。初始化状态值为1。例如:SETPC12SETW30FD60再如:FD2BK2;画点后海龟归位
第三讲设置笔宽命令格式:SETWN第三讲32画点的范例(P24)
setw20setpc12fd2bk2;画出一个点purt90fd20lt90pd;改变位置setw10setpc2fd1bk1;画出另一个点画出连续的点:
SETW20FD2BK2PURT90FD40LT90PDSETW10FD1BK1PURT90FD40LT90PDSETW20SETPC12FD2BK2第三讲画点的范例(P24)setw20setpc1233画椭圆和矩形“看一看”DRAWSETPC12(STAMPOVAL4040“TRUE)PULT90FD350RT90BK130PDSETPC9(STAMPRECT700120“TRUE)第三讲画椭圆和矩形“看一看”第三讲34画椭圆命令画空心椭圆格式:STAMPOVAL横轴半径纵轴半径画实心椭圆格式:(STAMPOVAL横轴半径纵轴半径“TRUE)注意:画实心椭圆时,一定要有括号。两个参数相等时为正圆。横轴半径纵轴半径第三讲画椭圆命令画空心椭圆横轴半径纵轴半径第三讲35画矩形命令画空心矩形格式:STAMPRECT长宽画实心矩形格式:(STAMPRECT长宽“TRUE)
注意:画实心矩形时,一定要有括号。两个参数相等时为正方形。长宽第三讲画矩形命令画空心矩形长宽第三讲36小知识用上述命令画椭圆后,小海龟在椭圆的中心。用上述命令画矩形后,小海龟在矩形的左下角。例如:STAMPOVAL12050STAMPRECT12050第三讲小知识用上述命令画椭圆后,小海龟在椭圆的中心。第三讲37动脑筋画矩形或椭圆时,海龟分别处在图形的什么位置?(答案略)海龟在同一位置画两个实心图形时,要注意什么?STAMPOVAL和STAMPRECT命令只能画水平与垂直方向的椭圆和矩形吗?第三讲动脑筋画矩形或椭圆时,海龟分别处在图形的什么位置?(答案略)38动脑筋画矩形或椭圆时,海龟分别处在图形的什么位置?(答案略)海龟在同一位置画两个实心图形时,要注意什么?(答案:要注意区别两个图形的颜色。)STAMPOVAL和STAMPRECT命令只能画水平与垂直方向的椭圆和矩形吗?(答案:不管海龟角度如何,都只能画水平与垂直方向的椭圆和矩形)第三讲动脑筋画矩形或椭圆时,海龟分别处在图形的什么位置?(答案略)39多龟作图多龟作图常用方法:指名法、激活法。退出多龟作图可以用draw命令。1、指名法。使用呼叫命令:ASK用ASK指名调用海龟。这种方法不够灵活,用得较少。格式:ASK[海龟代号][命令组]例如:ASK1[FD30ST]ASK2[FD60ST]ASK3[RT90FD60ST]SETPC12
可以发现有一只海龟变红色了。这是系统初始状态时那只0号海龟。默认状态下,除0号海龟以外的海龟是不显示的。只有通过ST命令才能让它们显示出来。第四讲多龟作图多龟作图常用方法:指名法、激活法。退出多龟作图可以用40多龟作图范例:ASK1[FD30ST]ASK2[FD60ST]ASK3[BK30ST]ASK[123][REPEAT3[FD30RT120]]第四讲多龟作图范例:第四讲41多龟作图2、激活法。激活法常用TELL—WHO—EACH命令激活并调用海龟。这是常用的多龟作图方式。(告诉命令TELL是叫醒海龟的命令。用who命令可以查看叫醒了几只。)格式:TELL[海龟代号]ASK1[FD30ST]ASK2[FD60ST]ASK3[BK30ST]
TELL[0123]RT90FD100上面语句可以调用0~3号海龟同时作图。第四讲多龟作图2、激活法。激活法常用TELL—WHO—EACH命令42多龟作图也可使用告诉命令TELLALL。这也是叫醒海龟的命令。用who命令可以查看叫醒了几只。)格式:TELLALL海龟代号1海龟代号2ASK1[FD30ST]ASK2[FD60ST]ASK3[BK30ST]
TELLALL02RT90FD100上面语句可以调用0~2号海龟同时作图。第四讲多龟作图也可使用告诉命令TELLALL。这也是叫醒海龟的命令43温馨提示使用ASK呼叫命令和TELL告诉命令,只能调用16只(0~15)海龟。若要调用更多的海龟,可以用SETTURTLES命令设置海龟的数量。例如:setturtles300ask260[fd30st]若没用SETTURTLES命令设置海龟的数量(1~32767),则类似ask29[fd30st]这样的语句就会报错。第四讲温馨提示使用ASK呼叫命令和TELL告诉44练技能(P344)第4题让五只海龟一起来画奥林匹克五环标志图。drawhtask1[setpc9lt90pufd90pd]ask2[setpc12rt90pufd90pd]ask3[setpc14pubk30lt90fd45pd]ask4[setpc2pubk30rt90fd45pd]ask[012345][stampoval3535]第四讲练技能(P344)第4题让五只海龟一起来画奥林匹克45用多只海龟画出下列图形参考答案drawhtpufd50pdfd50ask1[rt24pufd50pdfd50]ask2[rt48pufd50pdfd50]ask3[rt72pufd50pdfd50]ask4[rt96pufd50pdfd50]ask5[rt120pufd50pdfd50]ask6[rt144pufd50pdfd50]ask7[rt168pufd50pdfd50]ask8[rt192pufd50pdfd50]ask9[rt216pufd50pdfd50]ask10[rt240pufd50pdfd50]ask11[rt264pufd50pdfd50]ask12[rt288pufd50pdfd50]ask13[rt312pufd50pdfd50]ask14[rt336pufd50pdfd50]第四讲用多只海龟画出下列图形参考答案第四讲46drawhttellall014each[rt24*whopufd50pdfd50]第四讲第四讲47过程的定义过程就是一系列有序命令的集合。TO<过程名><过程体>END过程的第一行称为过程头,以TO开头,后面是过程名,如:SJXWJX,过程头和过程名间要有空格中间部分是过程体,是我们用来绘图或解决问题而按照一定次序编排的命令序列,它是整个过程的核心。过程体可以是一行命令,也可以是多行命令,还可以是其他一些过程名。最后一行是过程尾,用END表示过程的结束。第五讲过程的定义过程就是一系列有序命令的集合。第五讲48过程定义范例定义一个画三角形的过程TOSJXREPEAT3[FD90RT120]END定义一个画五角星的过程TOWJXREPEAT5[FD70RT144]END定义过程后,输入过程名,回车,即可执行过程。第五讲过程定义范例定义一个画三角形的过程第五讲49过程定义范例2定义一个画花的过程TOHUAREPEAT5[REPEAT3[FD50RT120]RT72]END定义过程后,输入HUA,回车,即可执行过程,画出花的图形。第五讲过程定义范例2定义一个画花的过程第五讲50过程定义范例3定义画立体五角星的过程TOLWHTRT18REPEAT5[FD60RT144FD60RT54FD110BK110LT54+72]END定义过程后,输入LW,回车,即可执行过程,画出五角星的图形。请大家分析一下上面画立体五角星的方法。第五讲过程定义范例3定义画立体五角星的过程第五讲51动脑筋1、原始命令可以用作过程名吗?过程名可以重复吗?原始命令不可以用作过程名,例如:
todraw回车后,电脑会显示:DRAWisalreadyinuse.Tryadifferentname.
tocs回车后,电脑会显示:CSisalreadyinuse.Tryadifferentname.过程名也不可以重复。即,定义过的过程,若用它的过程名,再次定义另一个过程,则先定义的过程被替换。2、在一个过程中,如果命令输入错了怎么办?可以输入EDIT过程名,回车后会调出过程编辑器。改正错误后,按F2退出编辑器即可自动保存修改。第五讲动脑筋1、原始命令可以用作过程名吗?过程名可以重复吗?第五讲52过程的编辑和修改定义过程后,使用EDIT过程名可调出编辑器,在编辑器中修改后,按F2即可关闭并保存修改。若定义了多个过程,则可以用EDITALL回车后,可以编辑器中编辑所有的过程。例如:TOFREPEAT4[FD90RT90]END
输入F,回车后可画出正方形。此时,输入EDITF,回车则打开编辑器。在编辑器中添加SETPC12,过程变成:TOFSETPC12REPEAT4[FD90RT90]END然后按F2关闭编辑器再输入F,回车后会发现,画出的是红色的正方形了。说明修改成功。第五讲过程的编辑和修改定义过程后,使用EDIT过程名可调出53过程的保存在命令窗口或在编辑器中编写过程后,单击“文件”菜单中的“保存”(快捷键是F6),或使用工具栏的SAVE按钮,可以把过程保存下来,保存时的文件名,可以与过程名不同。保存过程以后,可以使用“文件”菜单中的“打开”或“装载”命令,或使用工具栏上的LOAD按钮,打开保存的过程文件(*.LGO),再输入过程名,回车后即可执行过程。第五讲过程的保存在命令窗口或在编辑器中编写过程后,单击“文件”菜单54过程范例旋转的风车tofcrepeat6[fd70repeat4[fd30rt90]bk70rt60]wait10cleanrt10fcend第五讲过程范例旋转的风车第五讲55过程范例编写一个画地板图案的过程(自己加颜色)TODBHTREPEAT6[REPEAT6[FD30LT60]FD30RT60]END想一想,上面的语句是如何画出地板图形的?你能给地板图形填上颜色吗?第五讲过程范例编写一个画地板图案的过程(自己加颜色)第五讲56巧定海龟位置设置坐标命令SETXY[:X:Y]将海龟移到坐标[:X:Y]处,海龟的方向不变。设置横坐标命令SETX:X将海龟移到X坐标指定位置,Y坐标和海龟方向不变。设置纵坐标命令SETY:Y将海龟移到Y坐标指定位置,X坐标和海龟方向不变。注意:上面的命令,在移动海龟时,会在前后位置间连上线。画点命令DOT[:X:Y]在指定的坐标位置画一个点,海龟当前位置不变。第六讲巧定海龟位置设置坐标命令第六讲57小知识GETXY显示海龟当前的坐标。XCOR输出海龟横坐标位置。YCOR输出海龟Y坐标位置。DOTCOLOR[:X:Y]返回指定坐标点的颜色值。大家在电脑上试一下。第六讲小知识GETXY显示海龟当前的坐标。第六讲58多角星和空心星(1)画非空心的多角星的公式REPEAT角数[FD步数RT360*K/角数]其中1<K<角数/2,且是与角数没有(1以外的)公约数的正整数。计算K的方法举例:五角星:5÷2=2.5所以,K的取值是2。六角星:6÷2=3K的取值范围是2,但2与角数6有公约数,所以,无法取值。七角星:7÷2=3.5K的取值是2、3。八角星:8÷2=4K的取值范围是2、3,但2与角数8有公约数,所以,K的取值是3。九角星:9÷2=4.5K的取值范围是2、3、4,但3与角数9有公约数。所以,K的取值为2、4。十角星:10÷2=5K的取值范围是2、3、4,但2、4与角数10有公约数,所以,K的取值是3。第六讲多角星和空心星(1)画非空心的多角星的公式第六讲59多角星和空心星(2)画空心多角星的公式方法一:REPEAT角数[FD边长RT720/角数FD边长LT360/角数]方法二:REPEAT角数[FD边长RT第一次转角FD边长LT第一次转角-360/角数]例如:画边长为40、第一次转角为100的空心五角星,方法是:REPEAT5[FD40RT100FD40LT100-72]第六讲多角星和空心星(2)画空心多角星的公式第六讲60带参数(变量)的过程示例TOZFX:AREPEAT4[FD:ART90]END输入ZFX20,回车。再输入ZFX30,回车。再输入ZFX40,回车……第六讲带参数(变量)的过程示例第六讲61带参数(变量)的过程示例二:TOYUAN:A:BSTAMPOVAL:A:BEND输入YUAN2060,回车。再输入YUAN8050,回车。再输入YUAN10080,回车……第六讲带参数(变量)的过程示例二:第六讲62想一想画正多边形的公式:REPEAT边数[FD边长RT360/边数]你能定义一个带参数的过程来画任意边长和边数的正多边形吗?TODBX:N:BREPEAT:N[FD:BRT360/:N]END输入DBX690,回车后即可画出边长为90的六边形。输入DBX8100,回车后即可画出边长为100的八边形。第六讲想一想画正多边形的公式:TODBX:N:B第六讲63画任意多角星(请参见本PPT68页)TODJX:N:BC:KREPEAT:N[FD:BCRT360*:K/:N]END其中,:N表示多角星的角数。:BC表示多角星的线长。:K表示倍数。倍数K的确定方法,参见以前内容。例如画线长为70的八角星,输入DJX8703,再回车即可。第六讲画任意多角星(请参见本PPT68页)TODJX:N64画任意空心多角星TOKXX:N:BCREPEAT:N[FD:BCRT720/:NFD:BCLT360/:N]END其中,:N表示角数。:BC表示线长。例如画线长为50的空心九角星,输入KXX950,再回车即可。第六讲画任意空心多角星TOKXX:N:BC第六讲65画顶角可变的任意空心多角星(P54)
(请参见本PPT69页)TOKXX:N:BC:JREPEAT:N[FD:BCRT:JFD:BCLT:J-360/:N]END其中,:N表示角数。:BC表示线长。:J表示第一次转角。例如画线长为40、第一次转角为100的的空心五角星,输入KXX540100,再回车即可。第六讲画顶角可变的任意空心多角星(P54)
(请参见本PPT666一个画小海星的过程TOHX:B:CFD:BRT:CHX:B:C+10HTEND
输入HX103,回车试试。再输入HX101,回车试试。第六讲一个画小海星的过程TOHX:B:C第六讲67过程的递归调用一个程序中可以包括多个过程,当一个过程中出现另一个过程的过程名时,就表示要调用那个过程,这种情形称之为过程调用。示例:TOLX:AFD:ART120LX:A+10END这里的参数:A表示第一次前进的步数。执行LX10,会发现出现对话框报错。这是由于循环调用,成了死循环,无法停止而造成内存缓冲区已满的错误。我们可以加一条控制过程停止的语句,避免死循环。如下页:第七讲过程的递归调用一个程序中可以包括多个68过程的递归调用TOS:AIF:A>300THENSTOPFD:ART120S:A+10ENDIF:A>300THENSTOP意思是,当参数值增加到300以上时,就停止过程的运行。第七讲过程的递归调用TOS:A第七讲69练技能tohuarepeat4[repeat3[fd30rt120]rt90]endtohuahuansetpc12repeat8[huart45pufd70pd]end定义过程后,输入huahuan,再回车,即可画出一个花环。第七讲练技能tohua第七讲70用递归的方法画三角形圆环setpc2repeat12[pufd40rt30pdrepeat3[fd40rt120]lt30pubk40rt30]上面的语句是我们以前画右图时使用的。现在,若用递归调用的方法,应该怎样写呢?tosjsetpc2repeat3[fd40rt120]endtohuanrepeat12[pufd40rt30pdsjlt30pubk40rt30]end第七讲用递归的方法画三角形圆环setpc2repeat1271条件判断语句——IF语句还记得以前我们画过的风车吧?那个旋转的风车,运行时,需要单击停止按钮停止它的运行。原因是,在那个过程中,使用了循环调用,产生了死循环。下面的范例,使用了IF语句,避免了死循环。TOFCREPEAT6[FD70REPEAT4[FD30RT90]BK70RT60]WAIT10CLEANRT10MAKE"N:N+1IF:N=60THENSTOPELSEFCEND定义这个过程后,在命令窗口输入make“n0,回车后,再输入fc,再回车。会发现风车旋转一会儿就自动停止了。因为,每旋转一个新角度后,N的值都会加1,旋转60次后,N的值变为60时,过程就会自动停止了。此时,若在命令窗口内输入pr:n,回车后会看到此时变量N的值为60.第七讲条件判断语句——IF语句还记得以72条件判断语句——IF语句下面我们讲解一下IF语句IF语句有两种格式:格式1:IF条件THEN[命令](THEN可以省略不写)当符合条件时,执行THEN后面的命令,否则就不执行THEN后面的命令,直接执行其它命令。注意:命令可以是一个或多个命令,命令间以空格分开,最后以回车结束。不属于THEN中的命令,一定要写到下一行。其中的“条件”,可以是等式或者不等式及表达式,如:S=40、R>35、R≤10、(OR:N<8,:N>20)等。请大家自行阅读一下教材P63页的两个范例,对IF语句的这种格式加以理解。第八讲条件判断语句——IF语句下面我们讲解一下IF语句第八讲73条件判断语句——IF语句格式2:IF条件THEN[命令1]ELSE[命令2]当条件表达式符合条件时,执行THEN后面的命令1,跳过命令2,再接着执行其它命令;否则,跳过命令1,执行ELSE后面的命令2,再接着执行其它命令。例如画风车的范例:TOFCREPEAT6[FD70REPEAT4[FD30RT90]BK70RT60]WAIT10CLEANRT10MAKE"N:N+1IF:N=60THENSTOPELSEFCEND
注意:在递归调用时,若过程自己调用自己,一定要设计至少一个出口,来结束过程,否则会造成死循环,过程不停地运行,甚至导致死机等来重后果。语句中的STOP,是停止过程运行的命令。它只能使用于过程当中。第八讲条件判断语句——IF语句格式2:IF条件THEN74IF语句编程范例(P64)
根据提示输入一个1~360的数,表示一个角度,由电脑判断这个角是不是锐角,在命令窗口输出判断结果,并在绘图窗口中画出这个角。tojd:ncsrt90fd100bk100;画出一条边lt:n;左转输入的角度fd100ht;画出另一条边后隐藏海龟endtopdjdpr[请输入角度:];让屏幕显示"请输入角度:"make"rread;创建一个变量r,并等待输入jd:r;用输入的角度值r画角,画出一个r度的角if:r<90thenpr[您输入的角度是锐角]elsepr[您输入的角度不是锐角]end第八讲IF语句编程范例(P64)根据提示输75练技能(P65)试调用下面的两个过程,编写一个名为XZ的过程,完成以下功能:命令窗口显示提示:“请选择:1同心圆2两个正方形”,如果输入1,调用YUAN画出同心圆;如果输入2,调用ZFX画出两个正方形;如果输入其他数字,过程结束,无任何提示。TOYUANSETPC14(STAMPOVAL6060"TRUE)SETPC12(STAMPOVAL3030"TRUE)HTENDTOZFXSETPC13(STAMPRECT7878"TRUE)SETPC10(STAMPRECT5050"TRUE)HTENDTOXZDRAWPR[请选择:1同心圆2两个正方形]make"hreadif:h=1thenyuanif:h=2thenzfxend第八讲练技能(P65)试调用下面76循环语句FOR循环控制命令FOR语句有两种格式格式1:FOR“变量初值终值[命令串]功能:变量的值由初值开始,每次加1并将后面的命令串执行一遍,直到超过终值为止。例如:DRAWSETPC12SETW4FOR"I36[REPEAT3[FD:I*20RT120]]第九讲循环语句FOR循环控制命令FOR语句有两种格式第九讲77循环语句FOR格式2:(FOR“变量初值终值[命令串]步长)功能:变量的值由初值开始,每次增长一个步长,并将后面的命令串执行一遍,直到超过终值为止。例如:(FOR"I17[PR:I]2)输出结果为:1357(FOR"I17[PR:I]1)输出结果为1234567(FOR"I101[PR
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 脑梗死临床表现及护理
- 【初中语文】第17课《短文两篇-陋室铭》课件+2024-2025学年统编版语文七年级下册
- 2024-2025学年人教版高二化学选择性必修3配套课件 提升课时4 常见有机反应类型 有机物的检验、鉴别与分离
- 家居行业的人本革新
- 护理药理学复习题及答案
- 机器视觉技术在工业自动化中的应用
- 眼镜验光员习题+答案
- 财政与金融模拟习题(附答案)
- 管理会计试卷二-答案
- 高中文言文8种特殊句式
- 工程勘察设计收费标准使用手册
- 高速铁路设计规范(最新版)
- 25种全球最流行的管理工具
- 道德与法治-五年级(下册)-《建立良好的公共秩序》教学课件
- 小学班主任工作经验交流ppt
- 初中英语教学设计Its-time-to-watch-a-cartoon
- 2022年安徽高校教师岗前培训结业统考试题及参考答案
- 城市社区建设概论资料
- 数学-九宫数独100题(附答案)
- 苏教版四年级下册科学全册知识点总结
- 第三方单位考核管理办法
评论
0/150
提交评论