Exercise - Using a DO UNTIL Loop

About this task

Change the program in the previous exercise on page Exercise - Using a DO WHILE Loop from a DO WHILE to a DO UNTIL loop and achieve the same results. Remember that DO WHILE loops check for true expressions and DO UNTIL loops check for false expressions, which means their logical operators are often reversed.

ANSWER
Figure 1. Possible Solution
/******************************** REXX *******************************/
/* This program uses a DO UNTIL loop to keep track of window seats   */
/* in an 8-seat commuter airline.                                    */
/*********************************************************************/

  window_seats = 0        /* Initialize window seats to 0 */
  passenger = 0           /* Initialize passengers to 0   */

  DO UNTIL (passenger >= 8) | (window_seats = 4)

   /******************************************************************/
   /* Continue while the program has not yet read the responses of   */
   /* all 8 passengers and while all the window seats are not taken. */
   /******************************************************************/

    PULL window                /* Gets "Y" or "N" from input stream  */
    passenger = passenger + 1  /* Increase number of passengers by 1 */
    IF window = 'Y' THEN
       window_seats = window_seats + 1 /* Increase window seats by 1 */
    ELSE NOP
  END
  SAY window_seats 'window seats were assigned.'
  SAY passenger 'passengers were questioned.'

Task Task

Feedback


Timestamp icon Last updated: Tuesday, 7 January 2014


http://pic.dhe.ibm.com/infocenter/cicsts/v5r1/topic/com.ibm.cics.rexx.doc//dfhrx/dfhrx00049.html