User Tools

Site Tools


en:subroutine

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

en:subroutine [2016/08/13 09:06]
admin
en:subroutine [2020/02/28 10:46]
Line 1: Line 1:
-===== Subroutine (Statement) ===== 
- 
-==== Format ==== 
-**subroutine** subroutine_name ( [[functionvariablelist|function_variable_list]] )\\ 
-(tab)[[programsyntax|statement(s)]]\\ 
-**end subroutine** 
- 
-==== Description ==== 
-Create a subroutine (or subprogram) that will receive zero or more values and process those values.  A subroutine does not return a value back to the user, it just does what you want it to do.  Execution of a subroutine will terminate and control will be returned to the "[[call|call]]ing" program when a [[Return|Return]] statement is executed or by allowing the //End Subroutine// statement to be reached.  All variables used within the subroutine, that have not been previously declared as [[global|Global]], will be local to the subroutine and will not change the values in the calling code. 
- 
-Subroutine variables may a list of zero or more, comma separated, variables.  Arrays and variables may be passed by reference using the [[Ref|Ref]] definition. 
- 
-Subroutines should be defined anywhere on your program, but can not be defined within another [[function|Function]], [[Subroutine|Subroutine]] or control block ([[ifthen|If/Then]], [[dountil|Do/Until]], ...) 
- 
-==== Example ==== 
- 
-<code> 
-# 100 random circles 
-clg 
-for x = 1 to 100 
-   call draw() 
-next x 
-end 
- 
-function rnd(n) 
-   rnd = int(rand*n) 
-end function 
- 
-subroutine draw() 
-   color rgb(rnd(256),rnd(256),rnd(256)) 
-   circle rnd(graphwidth), rnd(graphheight), rnd(graphwidth/10) 
-end subroutine 
-</code> 
-draws\\ 
-{{:en:subroutine_circle.png|Circles}} 
-==== See Also ==== 
-{{page>en:start#Program Control&noheader}} 
- 
-==== History ====  
-|0.9.9.1|New To Version| 
  
en/subroutine.txt ยท Last modified: 2020/02/28 10:46 (external edit)