octave: The do-until Statement

 
 10.4 The do-until Statement
 ===========================
 
 The ‘do-until’ statement is similar to the ‘while’ statement, except
 that it repeatedly executes a statement until a condition becomes true,
 and the test of the condition is at the end of the loop, so the body of
 the loop is always executed at least once.  As with the condition in an
 ‘if’ statement, the condition in a ‘do-until’ statement is considered
 true if its value is nonzero, and false if its value is zero.  If the
 value of the conditional expression in a ‘do-until’ statement is a
 vector or a matrix, it is considered true only if it is non-empty and
 _all_ of the elements are nonzero.
 
    Octave’s ‘do-until’ statement looks like this:
 
      do
        BODY
      until (CONDITION)
 
 Here BODY is a statement or list of statements that we call the “body”
 of the loop, and CONDITION is an expression that controls how long the
 loop keeps running.
 
    This example creates a variable ‘fib’ that contains the first ten
 elements of the Fibonacci sequence.
 
      fib = ones (1, 10);
      i = 2;
      do
        i++;
        fib (i) = fib (i-1) + fib (i-2);
      until (i == 10)
 
    A newline is not required between the ‘do’ keyword and the body; but
 using one makes the program clearer unless the body is very simple.