| Qui est en ligne ? |
| Il y a : 18 utilisateurs en ligne, consultez le détail |
Forum » Documentation Linux » Structure de contrôle |
Forum modéré par : Jul |
| Même auteur |
|
Score ( voter ) : ![]() ![]()
|
|
| Page : [1] |
| Auteur | Message |
|---|---|
|
|
#0 Message posté le : 15-04-2007 à 21:12:08 |
Elfe Forum : Modérateur Association : Arrivé(e) le : 16-01-2003 Nombre de messages : 3677 |
Nous savons que toute instruction s'achève par un ;. Par conséquent, nous risquons de ne pouvoir exécuter qu'une intruction lors de l'introduction d'une condition. Pour palier à cela il est nécessaire de construire des blocs d'instruction à l'aide de { et }. ans la suite j'utiliserai <instructions> pour signifier :
une_instruction ; ou
{ instruction_1 ; instruction_2 ; ............. instruction_N ; } 1. Les tests :L'instruction ifSa syntaxe est : if(condition)
<Instructions>
else
<Instructions> /*else n'est pas obligatoire*/
Exemple dans la fonction calcul : {>if( *Max < tempmax ){
*Max = tempmax ;
*N=1;
}
>else if( *Max == tempmax) {++*N;}
>else if( *Max > tempmax) {/*Rien à faire*/}
>if( *ecart < (tempmax - tempmin) ) *ecart= tempmax - tempmin;
Il est possible d'utiliser une autre syntaxe pour if, plus rapide à éditer si jamais il n'y a pas de bloc d'instructions : (condition) ? <instructions>:<instructions> L'instruction de gauche est réalisée si le test est renvoie la valeur vraie, l'instruction de droite si le test renvoie la valeur faux. L'instruction switchL'instruction switch permet par rapport à la valeur d'un variable de réaliser une ou un bloc d'instructions. La syntaxe de switch est donné par : >switchvariable
{>casevaleur_1:
<instructions>
>break;
>casevaleur_2:
<instructions>
>break;
[............]
>casevaleur_N:
<instructions>
>break;
default ;
<instructions>
>break;
}
La valeur default est utilisée si aucune valeur indiquée à la suite de case n'était égale à la variable. 2. Les bouclesLa boucle forVoici la syntaxe de cette éternelle boucle « pour » : >for(i=0;i<=n_max;i++) <instructions> Ici, i prendra initialement la valeur 0 et ira jusque la valeur n_max comprise par pas de 1. L'incrémentation de i ce fait à l'aide de «++» : situé derrière i (i++), i sera incrémenté après que les instructions aient étés éffectuées, siués devant i (++i), i sera incrémenté avant que les instructions soient réalisée. La boucle whileElle correspond à la boucle « tant que ». Sa syntaxe est assez aisée : >while(condition) <instructions> La boucle do whileElle correspond à « tant que » et sa syntaxe : >do <instructions> >while(condition) Saut et arrêt dans les bouclesIl arrive parfois qu'un particulié se produise dans une boucle conduisant à une erreur, voir à un plantage du programme. Il est toute fois possible d'y remédier dans la mesure où nous aurions connaissance de ce cas (par exemple une division par zéro). Il suffit pour cela de réaliser un test qui permette de traiter le cas particulier à part, puis soit de reprendre la boucle, soit d'en sortir. Les fonctions respectives pour cela sont continue et break. Voici un exemple d'utilisation pour continue : >for(i=0;i<=N_max;++i)
{
>if(i==3){
printf("division par zéro") ;
continue ;
}
res=1/(i-3) ;
}
et pour break : >for(i=1;i<=N_max+1;i++)
{>if(i==3){
printf("division par zéro") ;
break ;
}
res=1/(i-3) ;
}
«« Précédent Suivant »»--Message édité par Jul le 15-04-2007 à 21:12:08-- ------------------------------------- Le Paradis c'est www.trustonme.net |
| Page : [1] |
Forum » Documentation Linux » Structure de contrôle |
Forum modéré par : Jul |
| Même auteur |
|
Score ( voter ) : ![]() ![]()
|
|
- Petit scarabée : 0 pastille, moins de 100 messages
- Scarabée : 0 pastille, plus de 100 messages
- Hobbit : 1 pastille, plus de 1000 messages
- Naboo : 2 pastilles, plus de 2000 messages
- Elfe : 3 pastilles, plus de 3000 messages
- Jedi : 4 pastilles, plus de 4000 messages
- Maître Jedi : 5 pastilles, plus de 5000 messages
