help: fix minor typos and warnings on Scilab code colorization
[scilab.git] / scilab / modules / core / help / pt_BR / 2_control_flow / for.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) - INRIA
5  * Copyright (C) 2018 - Samuel GOUGEON
6  *
7  * Copyright (C) 2012 - 2016 - Scilab Enterprises
8  *
9  * This file is hereby licensed under the terms of the GNU GPL v2.0,
10  * pursuant to article 5.3.4 of the CeCILL v.2.1.
11  * This file was originally licensed under the terms of the CeCILL v2.1,
12  * and continues to be available under such terms.
13  * For more information, see the COPYING file which you should have received
14  * along with this program.
15  *
16  -->
17 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
18         xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
19         xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
20         xmlns:scilab="http://www.scilab.org" xml:id="for" xml:lang="pt">
21     <refnamediv>
22         <refname>for</refname>
23         <refpurpose>palavra-chave de linguagem para laços ("loops") (significa
24             "para...")
25         </refpurpose>
26     </refnamediv>
27     <refsection>
28         <title>Descrição</title>
29         <para>
30             Usado para definir laços ("loops"). sua sintaxe é: <literal> for
31                 variável=expressão ,instrução, ... ,instrução,end
32             </literal>
33         </para>
34         <para>
35             <literal> for variável= expressão do instrução, ...
36                 ,instrução,end
37             </literal>
38         </para>
39         <para>
40             Se <literal>expressão</literal> é uma matriz ou um vetor linha,
41             <literal>variável</literal> toma como valores os valores de cada coluna da
42             matriz.
43         </para>
44         <para>
45             Um caso particular utiliza o operador <link linkend="colon">colon</link> para criar vetores linhas regularmente
46             espaçados, e remonta a formas de laço "for" tradicionais : <literal>for
47                 variable=n1:step:n2, ...,end
48             </literal>
49         </para>
50         <para>
51             Se <literal>expressão </literal>é uma lista,
52             <literal>variável</literal> toma como valores as entradas sucessivas da
53             lista.
54         </para>
55         <para>Aviso: o número de caracteres usados para definir o corpo de
56             qualquer instrução condicional (if, while, for ou select/case) deve ser
57             limitado a 16k.
58         </para>
59     </refsection>
60     <refsection>
61         <title>Exemplos</title>
62         <para>Lacetes iterativos comum :</para>
63         <programlisting role="example"><![CDATA[
64 // laços "for" tradicionais
65 n=5;
66 for i = 1:n
67     for j = 1:n
68         a(i,j) = 1/(i+j-1);
69     end;
70 end
71 for j = 2:n-1
72     a(j,j) = j;
73 end;
74 a
75 ]]></programlisting>
76         <para>Laço "decrescente" :</para>
77         <programlisting role="example"><![CDATA[
78 for j = 4:-1:1
79     j
80 end
81  ]]></programlisting>
82         <para>Laço implícito sobre as colunas de uma linha ou de uma matriz :</para>
83         <programlisting role="example"><![CDATA[
84 M = [1 2 ; 3 4 ; 5 6]'
85 for  c = M, c, end
86  ]]></programlisting>
87     <screen><![CDATA[
88 -> M = [1 2 ; 3 4 ; 5 6]'
89  M  =
90    1.   3.   5.
91    2.   4.   6.
92
93 --> for  c = M, c, end
94  c  =
95    1.
96    2.
97
98  c  =
99    3.
100    4.
101
102  c  =
103    5.
104    6.
105 ]]></screen>
106         <programlisting role="example"><![CDATA[
107 for v = a, write(%io(2),v), end
108 for j = 1:n, v = a(:,j), write(%io(2),v), end
109  ]]></programlisting>
110         <para>Laço em listas de entradas :</para>
111         <programlisting role="example"><![CDATA[
112 for l = list([1 2;3 4], (1+%z)^3, 'example', [%F %T]); l, end
113  ]]></programlisting>
114     <screen><![CDATA[
115 --> for l = list([1 2;3 4], (1+%z)^3, 'example', [%F %T]); l, end
116  l  =
117    1.   2.
118    3.   4.
119
120  l  =
121             2   3
122    1 +3z +3z  +z
123
124  l  =
125  example
126
127  l  =
128   F T
129 ]]></screen>
130     </refsection>
131     <refsection role="see also">
132         <title>Ver Também</title>
133         <simplelist type="inline">
134             <member>
135                 <link linkend="while">while</link>
136             </member>
137             <member>
138                 <link linkend="end">end</link>
139             </member>
140             <member>
141                 <link linkend="do">do</link>
142             </member>
143         </simplelist>
144     </refsection>
145     <refsection role="history">
146         <title>Histórico</title>
147         <revhistory>
148             <revision>
149                 <revnumber>6.0.0</revnumber>
150                 <revdescription>
151                     The for <literal>expression</literal> can now be a vector of graphic handles.
152                     <literal>for</literal> is now protected:
153                     Assignments like <literal>for=1</literal> are no longer possible.
154                 </revdescription>
155             </revision>
156         </revhistory>
157     </refsection>
158 </refentry>