Exercises - using loops, Conditional loops – IBM SC34-5764-01 User Manual

Page 64

Advertising
background image

Number 1
Number 2
Number 3
Number 4
Number 5
Number 6
Number 7
Number 9
Number 10

Exercises - Using Loops

1. What are the results of the following loops?

a.

DO digit = 1 TO 3

SAY digit

END
SAY 'Digit is now' digit

b.

DO count = 10 BY -2 TO 6

SAY count

END
SAY 'Count is now' count

c.

DO index = 10 TO 8

SAY 'Hup! Hup! Hup!'

END
SAY 'Index is now' index

2. Sometimes an infinite loop can occur when input to end the loop does not match what is expected. For

instance, in the example of using the LEAVE Instruction on page 41, what happens when the input is
Quit

and a PARSE PULL instruction replaces the PULL instruction?

PARSE PULL file_name

ANSWERS

1. The results of the repetitive loops are as follows:

a.

1
2
3
Digit is now 4

b.

10

8
6
Count is now 4

c.

Index is now 10

2. The program would be unable to leave the loop because Quit is not equal to QUIT. In this case,

omitting the PARSE keyword is preferred because regardless of whether the input is quit, QUIT, or
Quit

, the language processor translates the input to uppercase before comparing it to QUIT.

Conditional Loops

There are two types of conditional loops, DO WHILE and DO UNTIL. One or more expressions control
both types of loops. However, DO WHILE loops test the expression before the loop executes the first time
and repeat only when the expression is true. DO UNTIL loops test the expression after the loop executes
at least once and repeat only when the expression is false.

Control Flow within a Program

42

CICS TS for VSE/ESA: REXX Guide

Advertising