Chapters: 1: Introduction 2: Simple example 3: Invocation 4: Finer Control 5: X-Y Plots 6: Contour Plots 7: Image Plots 8: Examples 9: Gri Commands 10: Programming 11: Environment 12: Emacs Mode 13: History 14: Installation 15: Gri Bugs 16: Test Suite 17: Gri in Press 18: Acknowledgments 19: License Indices: Concepts Commands Variables |
9.3.17: `
(See also see If Statements.)
|
`if {[!] .flag.}|\flag|{{"string1" == "string2"}}' |
Control program flow. The `if
' block is ended with a line
containing `end if
'. Optional `else
' and `else if
'
blocks are allowed. Note that rpn expressions are allowed, and a
special form of string comparison is allowed, as in the examples below.
if .flag. # List of Gri commands to be done if .flag. is 1. # This list may extend across any number of lines. end if |
If the variable `.flag.
' is not equal to 0, do the code between the
`if
' line and the `end if
' line.
if .flag. # Commands done if .flag. is 1 else # Commands done if .flag. is 0 end if |
If the variable `.flag.
' is not equal to 0, do the code between the
`if
' line and the `else
' line. If `.flag.
' is equal to
0, do the code between the `else
' line and the `end if
' line.
if ! .flag. # Commands done if .flag. is 0 end if |
If the variable `.flag.
' is equal to 0, do the code between the
`if
' line and the `end if
' line.
if {rpn .flag. 10 <} # Commands done if 10 is less than .flag. end if |
If the variable `.flag.
' is greater than 10,
do the code between the
`if
' line and the `end if
' line.
if \smooth # Commands done if \smooth is 1 else # Commands done if \smooth is 0 end if |
If the number stored in the synonym `\smooth
' is not equal to 0, do
the code between the `if
' line and the `else
' line. If the
synonym stores a representation of a number not equal to zero, do the
`else
' part. If the synonym contains text that does not decode to
a number, generate error message.
if {"\item" == "Temperature"} # Commands done if the synonym \item is equal to the # indicated text string. end if |
If the synonym `\item
' has the value `Temperature
' stored in
it, do the indicated code.
if {rpn "\item" "Temperature" ==} # Commands done if the synonym \item # equals indicated text string. end if |
As above, but using the `rpn
' calculator
(see rpn Mathematics).
if {rpn "\item" "Temperature" !=} # ... end if |
As above, but do the indicated code if `\item
' is not equal
to `Temperature
'.