/usr/share/doc/octave-htmldoc/interpreter/Logical-Values.html is in octave-htmldoc 3.8.2-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>GNU Octave: Logical Values</title>
<meta name="description" content="GNU Octave: Logical Values">
<meta name="keywords" content="GNU Octave: Logical Values">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Numeric-Data-Types.html#Numeric-Data-Types" rel="up" title="Numeric Data Types">
<link href="Promotion-and-Demotion-of-Data-Types.html#Promotion-and-Demotion-of-Data-Types" rel="next" title="Promotion and Demotion of Data Types">
<link href="Bit-Manipulations.html#Bit-Manipulations" rel="prev" title="Bit Manipulations">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Logical-Values"></a>
<div class="header">
<p>
Next: <a href="Promotion-and-Demotion-of-Data-Types.html#Promotion-and-Demotion-of-Data-Types" accesskey="n" rel="next">Promotion and Demotion of Data Types</a>, Previous: <a href="Bit-Manipulations.html#Bit-Manipulations" accesskey="p" rel="prev">Bit Manipulations</a>, Up: <a href="Numeric-Data-Types.html#Numeric-Data-Types" accesskey="u" rel="up">Numeric Data Types</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Logical-Values-1"></a>
<h3 class="section">4.6 Logical Values</h3>
<p>Octave has built-in support for logical values, i.e., variables that
are either <code>true</code> or <code>false</code>. When comparing two variables,
the result will be a logical value whose value depends on whether or
not the comparison is true.
</p>
<p>The basic logical operations are <code>&</code>, <code>|</code>, and <code>!</code>,
which correspond to “Logical And”, “Logical Or”, and “Logical
Negation”. These operations all follow the usual rules of logic.
</p>
<p>It is also possible to use logical values as part of standard numerical
calculations. In this case <code>true</code> is converted to <code>1</code>, and
<code>false</code> to 0, both represented using double precision floating
point numbers. So, the result of <code>true*22 - false/6</code> is <code>22</code>.
</p>
<p>Logical values can also be used to index matrices and cell arrays.
When indexing with a logical array the result will be a vector containing
the values corresponding to <code>true</code> parts of the logical array.
The following example illustrates this.
</p>
<div class="example">
<pre class="example">data = [ 1, 2; 3, 4 ];
idx = (data <= 2);
data(idx)
⇒ ans = [ 1; 2 ]
</pre></div>
<p>Instead of creating the <code>idx</code> array it is possible to replace
<code>data(idx)</code> with <code>data( data <= 2 )</code><!-- /@w --> in the above code.
</p>
<p>Logical values can also be constructed by
casting numeric objects to logical values, or by using the <code>true</code>
or <code>false</code> functions.
</p>
<a name="XREFlogical"></a><dl>
<dt><a name="index-logical"></a>Built-in Function: <em></em> <strong>logical</strong> <em>(<var>x</var>)</em></dt>
<dd><p>Convert the numeric object <var>x</var> to logical type.
</p>
<p>Any non-zero values will be converted to true (1) while zero values
will be converted to false (0). The non-numeric value NaN cannot be
converted and will produce an error.
</p>
<p>Compatibility Note: Octave accepts complex values as input, whereas
<small>MATLAB</small> issues an error.
</p>
<p><strong>See also:</strong> <a href="Numeric-Data-Types.html#XREFdouble">double</a>, <a href="Single-Precision-Data-Types.html#XREFsingle">single</a>, <a href="Concatenating-Strings.html#XREFchar">char</a>.
</p></dd></dl>
<a name="XREFtrue"></a><dl>
<dt><a name="index-true"></a>Built-in Function: <em></em> <strong>true</strong> <em>(<var>x</var>)</em></dt>
<dt><a name="index-true-1"></a>Built-in Function: <em></em> <strong>true</strong> <em>(<var>n</var>, <var>m</var>)</em></dt>
<dt><a name="index-true-2"></a>Built-in Function: <em></em> <strong>true</strong> <em>(<var>n</var>, <var>m</var>, <var>k</var>, …)</em></dt>
<dd><p>Return a matrix or N-dimensional array whose elements are all logical 1.
If invoked with a single scalar integer argument, return a square
matrix of the specified size. If invoked with two or more scalar
integer arguments, or a vector of integer values, return an array with
given dimensions.
</p>
<p><strong>See also:</strong> <a href="#XREFfalse">false</a>.
</p></dd></dl>
<a name="XREFfalse"></a><dl>
<dt><a name="index-false"></a>Built-in Function: <em></em> <strong>false</strong> <em>(<var>x</var>)</em></dt>
<dt><a name="index-false-1"></a>Built-in Function: <em></em> <strong>false</strong> <em>(<var>n</var>, <var>m</var>)</em></dt>
<dt><a name="index-false-2"></a>Built-in Function: <em></em> <strong>false</strong> <em>(<var>n</var>, <var>m</var>, <var>k</var>, …)</em></dt>
<dd><p>Return a matrix or N-dimensional array whose elements are all logical 0.
If invoked with a single scalar integer argument, return a square
matrix of the specified size. If invoked with two or more scalar
integer arguments, or a vector of integer values, return an array with
given dimensions.
</p>
<p><strong>See also:</strong> <a href="#XREFtrue">true</a>.
</p></dd></dl>
<hr>
<div class="header">
<p>
Next: <a href="Promotion-and-Demotion-of-Data-Types.html#Promotion-and-Demotion-of-Data-Types" accesskey="n" rel="next">Promotion and Demotion of Data Types</a>, Previous: <a href="Bit-Manipulations.html#Bit-Manipulations" accesskey="p" rel="prev">Bit Manipulations</a>, Up: <a href="Numeric-Data-Types.html#Numeric-Data-Types" accesskey="u" rel="up">Numeric Data Types</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|