带参数的过程
发布时间:2016.11.25  浏览次数:4090

                                                                  带参数的过程

    会编写嵌套的过程后,我们会发现过程越来越简捷,但也有一个弊端,目前所编写的过程来出来的图形都是固定死的,如果能随便控制过程画出图形的大小或者个数等,会更方便和实用。如:前进FD命令,改变N的大小可以画出不同大小的直线。其实过程也可以实现这个功能。例:

  To zfx  :x

     Repeat 4[fd  :x  rt  90]

  End

过程编写成功后,调用zfx,,例:zfx 100,则画出边长为100的正方形。

右图的过程可编写成:

方法一:

To dzf 

  zfx 50

  zfx 100

  zfx 200

End

注:1.编写时参数前必须加“:”号。

2.一般用N、M代表个数,L、X代表长度。

 

练习题:

1.画任意大小的正N边形(先自己尝试编写并调用,注意有两个参数)。

解答:

To dbx  :n  :x

  repeat :n[fd  :x  rt  360/:n]

End

过程有两个参数,在调用时也必须有两个数字,前后位置不能乱。

带参数的过程

会编写嵌套的过程后,我们会发现过程越来越简捷,但也有一个弊端,目前所编写的过程来出来的图形都是固定死的,如果能随便控制过程画出图形的大小或者个数等,会更方便和实用。如:前进FD命令,改变N的大小可以画出不同大小的直线。其实过程也可以实现这个功能。例:

  To zfx  :x

     Repeat 4[fd  :x  rt  90]

  End

过程编写成功后,调用zfx,,例:zfx 100,则画出边长为100的正方形。

画右图的过程可编写成:

方法一:

To dzf 

  zfx 50

  zfx 100

  zfx 200

End

注:1.编写时参数前必须加“:”号。

2.一般用N、M代表个数,L、X代表长度。

 

练习题:

1.画任意大小的正N边形(先自己尝试编写并调用,注意有两个参数)。

解答:

To dbx  :n  :x

  repeat :n[fd  :x  rt  360/:n]

End

过程有两个参数,在调用时也必须有两个数字,前后位置不能乱。

 

2.画轴承,一个子过程加一个主过程搞定。