File: The-do_002duntil-Statement.html

package info (click to toggle)
octave 10.3.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 145,388 kB
  • sloc: cpp: 335,976; ansic: 82,241; fortran: 20,963; objc: 9,402; sh: 8,756; yacc: 4,392; lex: 4,333; perl: 1,544; java: 1,366; awk: 1,259; makefile: 660; xml: 192
file content (86 lines) | stat: -rw-r--r-- 3,824 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<!DOCTYPE html>
<html>
<!-- Created by GNU Texinfo 7.1.1, https://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>The do-until Statement (GNU Octave (version 10.3.0))</title>

<meta name="description" content="The do-until Statement (GNU Octave (version 10.3.0))">
<meta name="keywords" content="The do-until Statement (GNU Octave (version 10.3.0))">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta name="viewport" content="width=device-width,initial-scale=1">

<link href="index.html" rel="start" title="Top">
<link href="Concept-Index.html" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Statements.html" rel="up" title="Statements">
<link href="The-for-Statement.html" rel="next" title="The for Statement">
<link href="The-while-Statement.html" rel="prev" title="The while Statement">
<style type="text/css">
<!--
a.copiable-link {visibility: hidden; text-decoration: none; line-height: 0em}
div.example {margin-left: 3.2em}
span:hover a.copiable-link {visibility: visible}
-->
</style>
<link rel="stylesheet" type="text/css" href="octave.css">


</head>

<body lang="en">
<div class="section-level-extent" id="The-do_002duntil-Statement">
<div class="nav-panel">
<p>
Next: <a href="The-for-Statement.html" accesskey="n" rel="next">The for Statement</a>, Previous: <a href="The-while-Statement.html" accesskey="p" rel="prev">The while Statement</a>, Up: <a href="Statements.html" accesskey="u" rel="up">Statements</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<h3 class="section" id="The-do_002duntil-Statement-1"><span>10.4 The do-until Statement<a class="copiable-link" href="#The-do_002duntil-Statement-1"> &para;</a></span></h3>
<a class="index-entry-id" id="index-do_002duntil-statement"></a>

<p>The <code class="code">do-until</code> statement is similar to the <code class="code">while</code> 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 <code class="code">if</code> statement, the condition in a <code class="code">do-until</code>
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
<code class="code">do-until</code> statement is a vector or a matrix, it is considered
true only if it is non-empty and <em class="emph">all</em> of the elements are nonzero.
</p>
<p>Octave&rsquo;s <code class="code">do-until</code> statement looks like this:
</p>
<div class="example">
<div class="group"><pre class="example-preformatted">do
  <var class="var">body</var>
until (<var class="var">condition</var>)
</pre></div></div>

<p>Here <var class="var">body</var> is a statement or list of statements that we call the
<em class="dfn">body</em> of the loop, and <var class="var">condition</var> is an expression that
controls how long the loop keeps running.
</p>
<p>This example creates a variable <code class="code">fib</code> that contains the first ten
elements of the Fibonacci sequence.
</p>
<div class="example">
<div class="group"><pre class="example-preformatted">fib = ones (1, 10);
i = 2;
do
  i++;
  fib (i) = fib (i-1) + fib (i-2);
until (i == 10)
</pre></div></div>

<p>A newline is not required between the <code class="code">do</code> keyword and the
body; but using one makes the program clearer unless the body is very
simple.
</p>
</div>



</body>
</html>