Blame view

poly/14-boucle-while/index.html 9.55 KB
ab59a70e6   Rémi Emonet   up poly
1
2
3
4
5
  <!doctype html>
  <html lang="en">
    <head>
      <meta charset="utf-8">
      <meta http-equiv="X-UA-Compatible" content="IE=edge">
b28165df1   Rémi Emonet   poly fonctions
6
      <meta http-equiv="last-modified" content="2016-11-02 22:36:13 +0100">
ab59a70e6   Rémi Emonet   up poly
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
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <meta name="search-domain" value="">
      <link rel="stylesheet" type="text/css" href="../assets/css/bootstrap.css" />
      <link rel="stylesheet" type="text/css" href="../assets/css/bootstrap-theme.css" />
      <link rel="stylesheet" type="text/css" href="../assets/css/lesson.css" />
      
      <link rel="shortcut icon" type="image/x-icon" href="/favicon-UJM.ico" />
      
      <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
      <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
      <!--[if lt IE 9]>
  	<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
  	<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  	<![endif]-->
      <title>Programmer en Python: Boucles while (tant que)</title>
    </head>
    <body>
      <div class="container">
        <nav class="navbar navbar-default">
    <div class="container-fluid">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
          <span class="sr-only">Toggle navigation</span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </button>
  
        
        
336aedd77   Rémi Emonet   re
37
        <a href=".." class="pull-left">
ab59a70e6   Rémi Emonet   up poly
38
39
40
41
42
          <img class="navbar-logo" src="../assets/img/UJM-logo.svg" alt="UJM logo" />
        </a>
        
  
        
336aedd77   Rémi Emonet   re
43
        <a class="navbar-brand" href="../">Accueil</a>
ab59a70e6   Rémi Emonet   up poly
44
45
46
47
48
49
50
51
  
      </div>
      <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
        <ul class="nav navbar-nav">
  
  	
          
          
336aedd77   Rémi Emonet   re
52
          <li><a href="../reference/">Réference</a></li>
ab59a70e6   Rémi Emonet   up poly
53
54
  
          <li class="dropdown">
336aedd77   Rémi Emonet   re
55
            <a href="../" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Épisodes <span class="caret"></span></a>
ab59a70e6   Rémi Emonet   up poly
56
57
            <ul class="dropdown-menu">
              
336aedd77   Rémi Emonet   re
58
              <li><a href="../01-introduction/">Introduction</a></li>
ab59a70e6   Rémi Emonet   up poly
59
              
336aedd77   Rémi Emonet   re
60
              <li><a href="../02-terminal-et-bash/">Le Terminal et Bash</a></li>
ab59a70e6   Rémi Emonet   up poly
61
              
336aedd77   Rémi Emonet   re
62
              <li><a href="../03-bash-et-chemins/">Arborescences de Fichier et Bash</a></li>
ab59a70e6   Rémi Emonet   up poly
63
              
336aedd77   Rémi Emonet   re
64
              <li><a href="../04-python-intro/">Un Premier Programme</a></li>
ab59a70e6   Rémi Emonet   up poly
65
              
336aedd77   Rémi Emonet   re
66
              <li><a href="../05-operations-arith/">Opérations sur des Nombres</a></li>
ab59a70e6   Rémi Emonet   up poly
67
              
336aedd77   Rémi Emonet   re
68
              <li><a href="../06-variables-et-types/">Variables et Types</a></li>
ab59a70e6   Rémi Emonet   up poly
69
              
336aedd77   Rémi Emonet   re
70
              <li><a href="../07-erreurs/">Apprendre par l'Erreur</a></li>
ab59a70e6   Rémi Emonet   up poly
71
              
336aedd77   Rémi Emonet   re
72
              <li><a href="../08-fonction-et-aide/">Fonctions Prédéfinies et Aide</a></li>
ab59a70e6   Rémi Emonet   up poly
73
              
336aedd77   Rémi Emonet   re
74
              <li><a href="../09-import-biblio/">Bibliothèques et Importation de Fonctions</a></li>
ab59a70e6   Rémi Emonet   up poly
75
              
336aedd77   Rémi Emonet   re
76
              <li><a href="../10-biblio-qtido/">Bibliothèque Graphique qtido</a></li>
ab59a70e6   Rémi Emonet   up poly
77
              
336aedd77   Rémi Emonet   re
78
              <li><a href="../11-input-conversion/">Entrées Utilisateur</a></li>
ab59a70e6   Rémi Emonet   up poly
79
              
336aedd77   Rémi Emonet   re
80
              <li><a href="../12-condition-if/">Instructions Conditionnelles</a></li>
ab59a70e6   Rémi Emonet   up poly
81
              
336aedd77   Rémi Emonet   re
82
              <li><a href="../13-conditions-else/">Instructions Conditionnelles (2)</a></li>
ab59a70e6   Rémi Emonet   up poly
83
              
336aedd77   Rémi Emonet   re
84
              <li><a href="../14-boucle-while/">Boucles while (tant que)</a></li>
ab59a70e6   Rémi Emonet   up poly
85
              
336aedd77   Rémi Emonet   re
86
              <li><a href="../15-listes-base/">Listes de Valeurs</a></li>
ab59a70e6   Rémi Emonet   up poly
87
              
336aedd77   Rémi Emonet   re
88
              <li><a href="../16-listes-plus/">Listes de Valeurs (2)</a></li>
ab59a70e6   Rémi Emonet   up poly
89
              
336aedd77   Rémi Emonet   re
90
              <li><a href="../17-boucle-for/">Boucles for</a></li>
ab59a70e6   Rémi Emonet   up poly
91
              
b28165df1   Rémi Emonet   poly fonctions
92
93
              <li><a href="../18-def-fonctions/">Définitions de fonctions</a></li>
              
ab59a70e6   Rémi Emonet   up poly
94
95
96
            </ul>
          </li>
  	
336aedd77   Rémi Emonet   re
97
          <li><a href="../installation/">Installation</a></li>
ab59a70e6   Rémi Emonet   up poly
98
99
100
101
  
  	
  	
          <li class="dropdown">
336aedd77   Rémi Emonet   re
102
            <a href="../" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Extras <span class="caret"></span></a>
ab59a70e6   Rémi Emonet   up poly
103
104
            <ul class="dropdown-menu">
              
336aedd77   Rémi Emonet   re
105
              <li><a href="../about/">About</a></li>
ab59a70e6   Rémi Emonet   up poly
106
              
336aedd77   Rémi Emonet   re
107
              <li><a href="../more-bashtips/">Astuces Bash</a></li>
ab59a70e6   Rémi Emonet   up poly
108
              
336aedd77   Rémi Emonet   re
109
              <li><a href="../reference-qtido/">Référence qtido</a></li>
ab59a70e6   Rémi Emonet   up poly
110
111
112
113
114
115
              
            </ul>
          </li>
  	
  
  	
336aedd77   Rémi Emonet   re
116
          <li><a href="../license/">Licence</a></li>
ab59a70e6   Rémi Emonet   up poly
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
        </ul>
        <form class="navbar-form navbar-right" role="search" id="search" onsubmit="google_search(); return false;">
          <div class="form-group">
            <input type="text" id="google-search" placeholder="Search...">
          </div>
        </form>
      </div>
    </div>
  </nav>
  
  
  
  
  
  <div class="row">
    <div class="col-md-1">
      <h3>
        
f36e66ca4   Rémi Emonet   up poly
135
        <a href="../13-conditions-else/"><span class="glyphicon glyphicon-menu-left"></span></a>
ab59a70e6   Rémi Emonet   up poly
136
137
138
139
        
      </h3>
    </div>
    <div class="col-md-10">
f36e66ca4   Rémi Emonet   up poly
140
      <h3 class="maintitle"><a href="../">Programmer en Python</a></h3>
ab59a70e6   Rémi Emonet   up poly
141
142
143
144
145
      <h1 class="maintitle">Boucles while (tant que)</h1>
    </div>
    <div class="col-md-1">
      <h3>
        
f36e66ca4   Rémi Emonet   up poly
146
        <a href="../15-listes-base/"><span class="glyphicon glyphicon-menu-right"></span></a>
ab59a70e6   Rémi Emonet   up poly
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
        
      </h3>
    </div>
  </div>
  
  
  <blockquote class="objectives">
    <h2>Aperçu</h2>
  
    <div class="row">
      <div class="col-md-3">
        <strong>Teaching:</strong> 0 min
        <br/>
        <strong>Exercises:</strong> 0 min
      </div>
      <div class="col-md-9">
        <strong>Questions</strong>
        <ul>
  	
  	<li><p>Comment répeter des instructions à l’infini ?</p>
  </li>
  	
  	<li><p>Comment répeter des instructions plusieurs fois ?</p>
  </li>
  	
        </ul>
      </div>
    </div>
    
    <div class="row">
      <div class="col-md-3">
      </div>
      <div class="col-md-9">
        <strong>Objectifs</strong>
        <ul>
  	
  	<li><p>Savoir écrire une boucle <code class="highlighter-rouge">while</code>.</p>
  </li>
  	
        </ul>
      </div>
    </div>
    
  </blockquote>
  
  <blockquote class="syntax">
    <h2 id="syntaxe--boucles-avec-while">Syntaxe : Boucles avec <code class="highlighter-rouge">while</code></h2>
    <ul>
      <li>Une boucle « tant que »  démarre par le mot clé <code class="highlighter-rouge">while</code> suivi d’une condition, suivi de <code class="highlighter-rouge">:</code> puis d’un bloc appelé aussi « corps de la boucle ».</li>
      <li>Le corps de la boucle est exécuté répétitivement tant que la condition est vraie (valeur <code class="highlighter-rouge">True</code>).</li>
    </ul>
  
    <div class="source highlighter-rouge"><pre class="highlight"><code>while «condition» :
      «instruction»
      «instruction»
      «…»
      
  «…» # suite du programme, au même niveau que le `while`
  </code></pre>
    </div>
  
    <p>Une boucle <code class="highlighter-rouge">while</code> peut être virtuellement ré-écrite à l’aide d’une infinité de <code class="highlighter-rouge">if</code> imbriqués.
  Ainsi, la boucle :</p>
    <div class="source highlighter-rouge"><pre class="highlight"><code>while «A» :
      «B»         # corps de la boucle
  «C»         # après la boucle
  </code></pre>
    </div>
  
    <p>est équivalente à :</p>
  
    <div class="source highlighter-rouge"><pre class="highlight"><code>if «A» :
      «B»
      if «A» :
          «B»
          if «A» :
              «B»
              if «A» :
                  «B»
                  … # à l'infini
  «C»
  </code></pre>
    </div>
  </blockquote>
  
  <blockquote class="keypoints">
    <h2>Points Clés</h2>
    <ul>
      
      <li><p>La boucle <code class="highlighter-rouge">while</code> (tant que) permet de répéter l’exécution d’un bloc de code.</p>
  </li>
      
      <li><p>Le corps de la boucle <code class="highlighter-rouge">while</code> doit être indenté.</p>
  </li>
      
    </ul>
    
  </blockquote>
  
  
        
        <hr/>
  <footer>
    <div class="row">
      <div class="col-md-6" align="left">
        <h4>
  	Copyright &copy; 2016
  	
  	
        </h4>
      </div>
      <div class="col-md-6" align="right">
        <h4>
  	<!--
  	<a href="/">Source</a>
  	/
  	<a href="/blob/gh-pages/CONTRIBUTING.md">Contributing</a>
  	/
  	-->
  	<a href="mailto:remi.emonet@INVERSE-fr.univ-st-etienne">Contact</a>
        </h4>
      </div>
    </div>
  </footer>
  
        
      </div>
      <script src="../assets/js/jquery.min.js"></script>
  <script src="../assets/js/bootstrap.min.js"></script>
  <script src="../assets/js/lesson.js"></script>
2c9fd4729   Rémi Emonet   poly fix links
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
  <!-- clicky Cla -->
  <script type="text/javascript">
  var clicky_site_ids = clicky_site_ids || [];
  clicky_site_ids.push(100779706);
  (function() {
    var s = document.createElement('script');
    s.type = 'text/javascript';
    s.async = true;
    s.src = '//static.getclicky.com/js';
    ( document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0] ).appendChild( s );
  })();
  </script>
  <noscript><p><img alt="Clicky" width="1" height="1" src="//in.getclicky.com/100779706ns.gif" /></p></noscript> 
  
  
  <!-- Histats.com  START  (aync)-->
  <script type="text/javascript">var _Hasync= _Hasync|| [];
  _Hasync.push(['Histats.start', '1,2767123,4,0,0,0,00010000']);
  _Hasync.push(['Histats.fasi', '1']);
  _Hasync.push(['Histats.track_hits', '']);
  (function() {
  var hs = document.createElement('script'); hs.type = 'text/javascript'; hs.async = true;
  hs.src = ('http://s10.histats.com/js15_as.js');
  (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(hs);
  })();</script>
  <noscript><a href="http://www.histats.com" target="_blank"><img  src="http://sstatic1.histats.com/0.gif?2767123&101" alt="javascript hit counter" border="0"></a></noscript>
  <!-- Histats.com  END  -->
ab59a70e6   Rémi Emonet   up poly
304
305
    </body>
  </html>