
课件10张PPT。第九课 画彩色链子下图是由彩色的“珠子”组成的“链子”, 如何编写程序画出下图?主程序和子程序r=10 x=100 y=100 For x=x To 400 Step 3*r ball() EndFor Sub ball GraphicsWindow.BrushColor=GraphicsWindow.GetRandomColor() GraphicsWindow.FillEllipse(x,y,2*r,2*r) EndSub在画“链子”过程中,需要反复地“画彩色的珠子”,在一个程序中多次重写相同的命令是不合理的,在这种情况下,我们把“画彩色的珠子”命令组写成一个子程序,并给子程序取名为“ball”,然后在需要“画彩色的珠子”的时候直接写“ball()”来代替,即调用子程序。【格式】 Sub 子程序名 <命令组> EndSub 【作用】 将程序中反复出现的<命令组>写成子程序,可以简化主程序,增强主程序的可读性。子程序可以在主程序的任意位置被调用。【格式】 …… 子程序名() …… 【作用】 执行子程序中的所有命令。定义子程序的命令格式如下:在主程序中调用子程序的方法如下:试一试1、将“画彩色的链子”程序输入电脑,运行程序,每次画的链子相同吗?为什么? 2、能否用“while……endwhile”语句改写程序? 2、修改程序,画出下图的长方形“链子”。r=10 x=100 y=100 For x=x To 400 Step 3*r ball() EndFor For y=y To 300 Step 3*r ball() EndFor For x=x To 100 Step -3*r ball() EndFor For y=y To 100 Step -3*r ball() EndFor Sub ball GraphicsWindow.BrushColor=GraphicsWindow.GetRandomColor() GraphicsWindow .FillEllipse(x,y,2*r,2*r) EndSub 画彩色珠子串现在我们用线把珠子串起来,如下图所示:假如“珠子”的半径是r,两个“珠子”之间的距离也是r。画彩色珠子串r=10 x=100 y=100 For x=x To 400 Step 3*r GraphicsWindow.DrawLine(x-r,y+r,x,y+r) ball() EndFor GraphicsWindow.DrawLine(x-r,y+r,x,y+r) Sub ball GraphicsWindow.BrushColor=GraphicsWindow.GetRandomColor() GraphicsWindow.FillEllipse(x,y,2*r,2*r) EndSub修改程序,画出如下图所示的长方形“珠串”。r=10 y=100 For x=100 To 400 Step 3*r GraphicsWindow.DrawLine(x-r,y+r,x,y+r) ball() EndFor GraphicsWindow.DrawLine(x-r,y+r,x,y +r) For y=100 To 300 Step 3*r ball() GraphicsWindow.DrawLine(x+r,y+2*r,x+r,y+3*r) EndFor For x=x To 100 Step -3*r ball() GraphicsWindow.DrawLine(x-r,y+r,x,y+r) EndFor For y=y To 100 Step -3*r ball() If y>100 Then GraphicsWindow.DrawLine(x+r,y,x+r,y-r) EndIf EndFor Sub ball GraphicsWindow.BrushColor=GraphicsWindow.GetRandomColor() GraphicsWindow .FillEllipse(x,y,2*r,2*r) EndSub
~~ 您好,已阅读到文档的结尾了 ~~