EasyManua.ls Logo

IBM TSO/E REXX User Manual

IBM TSO/E REXX
242 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #73 background imageLoading...
Page #73 background image
Combining Types of Loops
You can combine repetitive and conditional loops to create a compound loop. The
following loop is set to repeat 10 times while a certain condition is met, at which
point it stops.
quantity = 20
DO number=1TO10WHILE quantity < 50
quantity = quantity + number
SAY 'Quantity = 'quantity ' (Loop 'number')'
END
The result of this example is as follows:
Quantity = 21 (Loop 1)
Quantity = 23 (Loop 2)
Quantity = 26 (Loop 3)
Quantity = 30 (Loop 4)
Quantity = 35 (Loop 5)
Quantity = 41 (Loop 6)
Quantity = 48 (Loop 7)
Quantity = 56 (Loop 8)
You can substitute a DO UNTIL loop, change the comparison operator from < to >,
and get the same results.
quantity = 20
DO number=1TO10UNTIL quantity > 50
quantity = quantity + number
SAY 'Quantity = 'quantity ' (Loop 'number')'
END
Nested DO Loops
Like nested IF/THEN/ELSE instructions, DO loops can also be within other DO
loops. A simple example follows:
DO outer=1TO2
DO inner=1TO2
SAY 'HIP'
END
SAY 'HURRAH'
END
The output from this example is:
HIP
HIP
HURRAH
HIP
HIP
HURRAH
If you need to leave a loop when a certain condition arises, use the LEAVE
instruction followed by the control variable of the loop. If the LEAVE instruction is for
the inner loop, you leave the inner loop and go to the outer loop. If the LEAVE
instruction is for the outer loop, you leave both loops.
To leave the inner loop in the preceding example, add an IF/THEN/ELSE instruction
that includes a LEAVE instruction after the IF instruction.
DO outer=1TO2
DO inner=1TO2
IF inner > 1 THEN
LEAVE inner
Using Looping Instructions
Chapter 4. Controlling the Flow Within an Exec 55

Table of Contents

Question and Answer IconNeed help?

Do you have a question about the IBM TSO/E REXX and is the answer not in the manual?

IBM TSO/E REXX Specifications

General IconGeneral
BrandIBM
ModelTSO/E REXX
CategoryComputer Hardware
LanguageEnglish

Summary

Part 1. Learning the REXX Language

Chapter 1. Introduction

Explains the REXX programming language, its features, and suitability for various users.

Chapter 2. Writing and Running a REXX Exec

Details the process of writing, running, and understanding REXX execs, including syntax rules and common issues.

Chapter 3. Using Variables and Expressions

Covers REXX variables, expressions, operators, and tracing techniques for data manipulation and calculations.

Chapter 4. Controlling the Flow Within an Exec

Explains how to alter REXX exec execution using conditional, looping, and interrupt instructions.

Chapter 5. Using Functions

Describes REXX functions, including built-in, user-written, and packages, and how to use them.

Chapter 6. Writing Subroutines and Functions

Guides on writing, calling, and passing information to REXX subroutines and functions.

Chapter 7. Manipulating Data

Covers REXX data manipulation using compound variables, stems, and various parsing techniques.

Part 2. Using REXX

Chapter 8. Entering Commands from an Exec

Explains how REXX execs can interact with the operating system by issuing TSO/E and host commands.

Chapter 9. Diagnosing Problems Within an Exec

Details techniques for diagnosing and debugging REXX execs using tracing and special variables.

Chapter 10. Using TSO/E External Functions

Describes TSO/E external functions available for interacting with the system and performing specific tasks.

Chapter 11. Storing Information in the Data Stack

Explains how to use the REXX data stack for temporary storage, passing information, and managing buffers.

Chapter 12. Processing Data and Input/Output Processing

Covers dynamic REXX expression modification and processing data to/from data sets using EXECIO.

Chapter 13. Using REXX in TSO/E and Other MVS Address Spaces

Explains how to run REXX execs in TSO/E and non-TSO/E MVS address spaces and available services.

Part 3. Appendixes

Appendix A. Allocating Data Sets

Guides on creating and allocating data sets, including checklists for ISPF/PDF and ALLOCATE commands.

Appendix B. Specifying Alternate Libraries with the ALTLIB Command

Details using the ALTLIB command to specify and manage alternative libraries for implicit execution.

Appendix C. Comparisons Between CLIST and REXX

Compares REXX and CLIST languages, highlighting similarities and differences in features and capabilities.

Appendix D. Notices

Provides legal notices, warranty disclaimers, copyright, and trademark information.

Bibliography

TSO/E Publications

Lists IBM publications related to TSO/E, including administration, CLISTs, and general information.

Related Publications

Lists IBM publications related to z/OS MVS and ISPF, covering system programming and administration.

Index

Related product manuals