INCLAN: do: Difference between revisions
Jump to navigation
Jump to search
m (1 revision) |
No edit summary |
||
Line 1: | Line 1: | ||
== Synopsis == | |||
'''do''' | |||
:... | |||
'''end do''' | |||
'''do''' ''variable'' ''start'' ''end'' [''step''] [''parallel'' [''continue'']] | |||
:... | |||
'''end do''' | |||
variable | |||
== Description == | |||
Executes a loop within a macro. Without parameters the loop is executed unconditionally, i.e. until one of the statements [[INCLAN: break|break]], [[INCLAN: exit|exit]], [[INCLAN: quit|quit]] or [[INCLAN: return|return]] is encountered. | |||
'''do''' followed by parameters executes a FORTRAN-style do-loop within a macro. The loop counter ''variable'' and the integer expressions ''start'', ''end'', and ''step'' have the usual meaning. Parallel loops are executed in parallel on [[INCLAN: nproc|nproc]] processors. | |||
If the keyword '''continue''' is present, the program continues immediately with the execution of the next statement after the parallel loop. Otherwise, the next statement after the loop is executed when the parallel loop is finished. | |||
== Examples == | |||
do | |||
if (filename.eq.' ') break | |||
. | |||
. | |||
end do | |||
do i 1 10 | |||
print "Iteration $i." | |||
end do | |||
== See also == | |||
[[INCLAN:end do|end do]] |
Revision as of 23:14, 18 February 2009
Synopsis
do
- ...
end do
do variable start end [step] [parallel [continue]]
- ...
end do
Description
Executes a loop within a macro. Without parameters the loop is executed unconditionally, i.e. until one of the statements break, exit, quit or return is encountered.
do followed by parameters executes a FORTRAN-style do-loop within a macro. The loop counter variable and the integer expressions start, end, and step have the usual meaning. Parallel loops are executed in parallel on nproc processors.
If the keyword continue is present, the program continues immediately with the execution of the next statement after the parallel loop. Otherwise, the next statement after the loop is executed when the parallel loop is finished.
Examples
do if (filename.eq.' ') break . . end do
do i 1 10 print "Iteration $i." end do