资源简介 (共23张PPT)累加求和第四课[前情回顾] 上一节课,我们为了减少程序中命令的重复,优化算法,学习了循环词句,大家回顾一下:For…EndFor循环语句流程图:循环变量=初值执行循环语句中间的语句组循环变量增加一个步长循环变量超过终值?是否画正12边形的程序及流程图:开始i=1画一条边,右转30度i增加1 i 12是否≤结束循环语句S=12Length=50E=360/sFor i=1 to S Step 1Turle.Move(Length)Trutle.Turn(E)EndFor循环变量步长终值累加求和1+2+3+4+5+6+7+8+9+10=?2+4+6+8+10+12+14+16=?1+2+3+4+5+6+7+┅ +89=?1+3+5+7 +┅ +77+79=?像这样重复做加法的过程叫累加求和下面这些算式,大家能快速的算出来吗?1.上面这些例子是不是有规律排列重复做加法的过程?2. 可以用上节课学的For…EndFor循环语句吗?一.设计算法和流程图 变量就像一个存放数据的”盒子”,因此,我们用变量sum来存放累加的结果。1+2+3+4+┅+89 可以用如下的算法来计算:1.先将存放数据的“盒子”清空:sum=02.将第一个数据“1”放入“盒子”中:sum=sum+13.将第2个数据“2”放入“盒子”中:sum=sum+24.将第3个数据“3”放入“盒子”中:sum=sum+3…… 一直把所有的数据都放入“盒子”中,当把所有的数据都放入了变量sum这个“盒子”中,变量sum才是我们要的结果。sum0sum1sum0sum1sum3+ 2sum6sum3+ 3+ 1===……特别指出: 赋值语句“sum=sum+1”虽然看上去是一个数学等式,但它的含义与我们数学中的等式是完全不同的:1.赋值词句的左边必须是一个变量.2.赋值词句右边的“sum”和左边的“sum”的值是不一样的。设计算法流程图开始sum=0sum=sum+1sum=sum+2……sum=sum+89结束顺序结构图1开始sum=0i=1i=i+1sum=sum+i结束i<=89是否循环结构图2●上面图1的流程图是顺序结构,虽然算法简单,但重复的语句很多,程序太长。如果采用图2的循环结构,程序就简洁的很多。●用For…EndFor循环语句可以很简单地实现图2的算法,程序如下:sum=0 For i=1 to 89 step 1 sum=sum+i EndFor小试牛刀:⑴2+4+6+8+10+┅+100=?⑵1+4+7+10 +┅+51=?⑶90+85+80+┅+20=?⑷-1-3-5- ┅ -99=?1.它们的步长分别是( ) 、( )、 ( )、 ( )2.它们的循环语句及步长分别是( ) 、( )、 ( )、 ( )二.显示信息上面累加的结果算出来了,那么怎样将结果显示出来呢?1.一个是“图形窗口”,对象名称叫“GraphicsWindow”,这个窗口既可以绘图也可以显示文字信息。2、另一个窗口叫“文本窗口”,对象名称叫“TextWindow”,这个窗口只能显示文字信息。◎在Small Basic中有两个显示信息的窗口:下面的程序在图形窗口显示1+3+5+…+79的计算结果:sum=0For i=1 to 79 step 2 sum=sum+iEndForGraphicsWindow.FontSize=30GraphicsWindow.DrawText(100,80,"1+3+5…+79=" + sum)运行程序,显示结果如图字体大小设置100是纵坐标,80是横坐标+是连接符DrawText操作格式:GraphicsWindow.DrawText(x,y,text)作用是在坐标(x,y)显示文本text。如果只显示文字,我们也可以将结果显示在文本窗口。例如:sum=0For i=1 to 79 step 2 sum=sum+iEndForTextWindow.WriteLine(“1+3+79=”+sum)1、GraphicsWindow.DrawText(x,y,text)GraphicsWindow.DrawText(100,80, “1+2+…+89=”+ sum)2、TextWindow.WriteLine( text )TextWindow.WriteLine(“1+2+…+89=” + sum)注意:1.GraphicsWindow.DrawText操作格式有坐标(x,y),而TextWindow.WriteLine没有。2. GraphicsWindow.DrawText和TextWindow.WriteLine都要显示文本text。两种显示结果你知道吗?1、表达式是由数值、变量、运算符、括号等按照一定的运算规则组成的式子,与数学中的计算意义基本相同。表达式中不能出现字符或字符型变量,否则会出错。例如:150+”100”是错误的。因为150是数值型数字,而”100”字符弄数字。2.作为输出操作的参数,可以将字符与数值型变量通过“+”连接起来,例如:TextWindow.WriteLine(“1+2+…+89=” + sum)GraphicsWindow.DrawText(100,80, “1+2+…+89=”+ sum)这里sum前的“+”是连接的意思,不同于数学运算“+”号。小试牛刀: 1.猜一猜TextWindow对象和各种属性和操作的含义,再与素材目录中的说明相对照,看看你猜对了多少?小试牛刀2.编写程序,计算:90+85+80 +…+20将结果显示在图形窗口,显示格式如下:90+85+80 +…+20=825sum=0For i=90To 20 Step -5 sum=sum+iEndForGraphicsWindow.FontSize=30GraphicsWindow.BrushColor="blue"GraphicsWindow.DrawText(100,80 ,”90+85+80 +…+20="+sum)程序如下:小试牛刀3.编写程序,计算:1+2+3 +…+100将结果显示在文本窗口,显示格式如下:1+2+3 +…+100=5050sum=0For i=-1 To 100 Step 1 sum=sum+iEndForTextWindow.WriteLine(“1+2+3 +…+100="+sum)程序如下:4.编写程序,计算:-1-3-5- ┅ -99,将结果显示在图形窗口,用30号蓝色的字显示。显示格式如下:-1-3-5- ┅ -99=-2500小试牛刀GraphicsWindow.FontSize=30GraphicsWindow.BrushColor="blue"提示如下:课堂小结一、设计算法和流程图1.用For…EndFor循环语句实现累加求和。2.赋值语句:sum=sum+i注意:(1)赋值语句等号的左边必须是一个变量。(2)赋值词句右边的“sum”和左边的“sum”的值是不一样的。二、显示信息1.图形窗口GraphicsWindow.DrawText(x,y,text)2.文本窗口TextWindow.WriteLine(text)累加求和 展开更多...... 收起↑ 资源预览