Function: Difference between revisions

From NSB App Studio
Jump to navigation Jump to search
Brendon (talk | contribs)
No edit summary
Brendon (talk | contribs)
No edit summary
Line 2: Line 2:
:::[''statements''] <br />
:::[''statements''] <br />
:::[''procedurename'' = ''expression''] <br />
:::[''procedurename'' = ''expression''] <br />
:::[EXIT FUNCTION] <br />
:::[Exit Function] <br />
:::[''statements''] <br />
:::[''statements''] <br />
:::[''procedurename'' = ''expression''] <br />
:::[''procedurename'' = ''expression''] <br />
Line 13: Line 13:
Each member of ''arglist'' is an argument passed to the procedure. Simple variables, such as strings and numbers, are passed by value. Complex variables, such as arrays and objects, are passed by reference. Each member of ''arglist'' can be used within the procedure to reference a value passed in. It follows standard variable naming procedure.
Each member of ''arglist'' is an argument passed to the procedure. Simple variables, such as strings and numbers, are passed by value. Complex variables, such as arrays and objects, are passed by reference. Each member of ''arglist'' can be used within the procedure to reference a value passed in. It follows standard variable naming procedure.


'''Note:''' If the return value is not stored in a variable or used in an expression, the procedure is called as a SUB procedure, and multiple arguments cannot be enclosed in parenthesis.
'''Note:''' If the return value is not stored in a variable or used in an expression, the procedure is called as a Sub procedure, and multiple arguments cannot be enclosed in parenthesis.


== Example ==
== Example ==


<pre>
<pre>
REM FUNCTION Example
Rem Function Example
'FUNCTION: a procedure that returns a value
'Function: a procedure that returns a value
DIM Selection, SalePrice
Dim Selection, SalePrice
Selection = Menu("Wednesday")
Selection = Menu("Wednesday")
PRINT "Wednesday's menu feature:",Selection
Print "Wednesday's menu feature:",Selection
SalePrice = Min(31,29)
SalePrice = Min(31,29)
PRINT "Sale Price:", SalePrice
Print "Sale Price:", SalePrice
FUNCTION Menu(day)
Function Menu(day)
   IF day = "Wednesday" THEN
   If day = "Wednesday" THEN
     Menu = "Salisbury Steak"
     Menu = "Salisbury Steak"
   END IF
   End If
END FUNCTION
End Function
FUNCTION Min(x,y)
Function Min(x,y)
   IF x > y THEN
   If x > y Then
     MIN = y
     Min = y
     EXIT FUNCTION
     Exit Function
   ELSE
   Else
     MIN = x
     Min = x
   END IF
   End If
END FUNCTION
End Function
</pre>
</pre>


Line 50: Line 50:


[[call|CALL]], [[sub|SUB]]
[[call|CALL]], [[sub|SUB]]
[[Category:Language Reference]]


[[Category:Language Reference]]
[[Category:Language Reference]]

Revision as of 01:21, 17 August 2012

Function procedurename[(arglist)]

[statements]
[procedurename = expression]
[Exit Function]
[statements]
[procedurename = expression]

End Function

Description

Function declares a procedure, procedurename, that executes statements, with arglist as parameters, with an optional return value. The required parameter, procedurename, is used to call the procedure, and must follow standard variable naming conventions. The optional parameter list, arglist, is a comma separated list of variables used to represent variables that are passed to the procedure when it is called. The optional component, statements, will be executed as the body of the procedure. Any number of optional Exit Function statements can be used to exit the procedure during execution. The value returned by the procedure defaults to Empty. To return a value other than the default, assign the value to the function name. The current value of procedurename will be returned when the procedure exits by executing all statements or encountering an Exit Function statement.

Each member of arglist is an argument passed to the procedure. Simple variables, such as strings and numbers, are passed by value. Complex variables, such as arrays and objects, are passed by reference. Each member of arglist can be used within the procedure to reference a value passed in. It follows standard variable naming procedure.

Note: If the return value is not stored in a variable or used in an expression, the procedure is called as a Sub procedure, and multiple arguments cannot be enclosed in parenthesis.

Example

Rem Function Example
'Function: a procedure that returns a value
Dim Selection, SalePrice
Selection = Menu("Wednesday")
Print "Wednesday's menu feature:",Selection
SalePrice = Min(31,29)
Print "Sale Price:", SalePrice
Function Menu(day)
  If day = "Wednesday" THEN
    Menu = "Salisbury Steak"
  End If
End Function
Function Min(x,y)
  If x > y Then
    Min = y
    Exit Function
  Else
    Min = x
  End If
End Function

Output

Wednesday's menu feature: Salisbury Steak
Sale Price:   29

Related Items

CALL, SUB