Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Português - 日本語 - Русский
Aide de Scilab >> Scilab > Structure de contrôle > for

for

Ouverture d'une boucle itérative non conditionnelle

Description

Utilisé pour spécifier une boucle. La syntaxe est la suivante :

for variable=expression ,instruction, ,instruction,end

for variable=expression do instruction, ,instruction,end

Si expression est une matrice ou un vecteur ligne, variable prend successivement les valeurs de chaque colonne de la matrice.

Un exemple utile : for variable=n1:pas:n2, ...,end

Si expression est une liste, variable prend comme valeurs successives les termes de la liste.

En accord avec les conventions de codage pour le langage de programmation Scilab, il est recommandé de :

  • Commencer chaque instruction sur une nouvelle ligne.

  • Ne pas écrire plus d'une instruction simple par ligne.

  • Séparer les instructions composées sur plusieurs lignes.

Par exemple, utiliser :

for i = 1:5
    disp(i);
end
au lieu de
for i = 1:5, disp(i); end
Le nombre de caractères constituant le corps d'une instruction conditionnelle (if while for ou select/case) est limité à 16 ko.

Exemples

Itérations communes (imbriquées ou non) :

n=5;
for i = 1:n
    for j = 1:n
        a(i,j) = 1/(i+j-1);
    end;
end
for j = 2:n-1
    a(j,j) = j;
end;
a

Itérations par valeurs décroissantes :

for j = 4:-1:1
    j
end

Itérations implicites sur les colonnes d'un vecteur-ligne ou d'une matrice :

M = [1 2 ; 3 4 ; 5 6]'
for  c = M, c, end
-> M = [1 2 ; 3 4 ; 5 6]'
 M  =
   1.   3.   5.
   2.   4.   6.

--> for  c = M, c, end
 c  =
   1.
   2.

 c  =
   3.
   4.

 c  =
   5.
   6.
for v = a, write(%io(2),v), end
for j = 1:n, v = a(:,j), write(%io(2),v), end

Itérations sur les éléments d'une liste :

for l = list([1 2;3 4], (1+%z)^3, 'example', [%F %T]); l, end
--> for l = list([1 2;3 4], (1+%z)^3, 'example', [%F %T]); l, end
 l  =
   1.   2.
   3.   4.

 l  =
            2   3
   1 +3z +3z  +z

 l  =
 example

 l  =
  F T

Voir aussi

  • while — mot-clé utilisé dans une structure while ... end
  • end — Fin d'un bloc if ou select, ou d'une boucle for ou while
  • do — Mot-clé utilisé pour les boucles

Historique

VersionDescription
6.0.0 L'expression alimentant les itérations peut maintenant être un vecteur d'identifiants graphiques. for est désormais protégé. Les affectations telles que for=1 ne sont plus possibles.
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Feb 14 14:59:53 CET 2019