Here we use an iterator-id paragraph GetEven to return the even numbers in the FibonacciArray
01 m-FibonacciArray binary-long occurs any static. 01 anyNumber binary-long. procedure division ... set content of m-FibonacciArray to (1 2 3 5 8 13 21 34 55 89 144) display "Even numbers" perform varying evenNumbers through iterators::GetEven display evenNumbers end-perform iterator-id GetEven static. 01 i binary-long. procedure division yielding res as binary-long. perform varying i through m-FibonacciArray if i b-and 1 = 0 set res to i goback end-if end-perform stop iterator *> stops the iterator immediately end iterator. *> stops the iterator implicitly
See also the Iterators sample, which is available from $COBDIR/demo.