Chapitre 1: Les instructions de base

Questions relatives au C et C++

Moderator: analyzer

Chapitre 1: Les instructions de base

Postby analyzer on 26 Mar 2005, 19:22

Introduction:
La structure essentielle en C ou en C++ est la fonction. Un programme est composé d'un ensemble de fonctions disjointes dont une et une seule porte le nom de "main" (fonction principale). L'ensemble des fonctions constitue le fichier source. Une fonction est structurée par blocs. Chaque bloc, délimité par les caractères "{" et "}", contient un ensemble d'instructions qui se terminent toutes par le caractère ";".
En C et en C++, comme dans beaucoup de langages, les espaces ne modifient pas la source. En effet, lors de la compilation, tous les espaces sont ignorés (sauf certains bien sûr). Ainsi, il est possible de disposer ses instructions n'importe où sur la page. Faites en sorte que cela reste lisible.
Nous étudierons cela plus tard, mais nous ne devons savoir que certaines fonctions nécessites l'introduction d'un fichier définition. Ce fichier correspond à une librairie contenant une liste de fonctions. Pour faire cette inclusion, il faudra placer en tête du programme la directive : #include <name.h> ("name" sera replacé par le nom du fichier en question). Il en sera de même pour l'utilisation de dll.


Application:
a) L'affectation:
Cette opération consiste à attribuer à un instant donné une valeur numérique ou une expression ou autre à une entité appelée variable. Nous distinguerons trois caractéristiques pour définir une variable, tout d'abord l'identificateur qui est associé à une zone mémoire dont le contenu est la valeur, la valeur qui peut être modifiée au cours de l'exécution et le type.

Code: Select all
x = 5;
y = y+1;
// x+1 = x est illicite


L'utilisation des deux caractères "//" permet d'insérer un commentaire dans le programme.


b) L'entrée à partir d'un clavier:
On demande à l'utilisateur d'entrer une valeur, qui sera utilisée par par la suite, à l'aide de l'instruction cin. Cette valeur est introduite dans une variable.
L'utilisation de cette instruction impose l'inclusion du fichier de définition "iostream.h".

Code: Select all
cin >> x; // Attention les deux caractères ">>" sont utilisés seulement en C++, et non en C.



c) La sortie à l'écran:
L'instruction cout permet d'afficher un résultat à l'écran.

Code: Select all
cout << x; // Attention les deux caractères "<<" sont utilisés seulement en C++, et non en C. 


L'utilisation de cette instruction impose l'inclusion du fichier de définition "iostream.h".


d) L'instruction conditionnelle:
La première instruction conditionnelle que nous allons voir est la plus simple, bien que les autres ne soient pas compliquées.


Code: Select all
int c = a;
if (a < b) int c = b;
c = c * 2;


A l'aide de cet exemple, on constate qu'au début "c" est égal à "a". Ensuite, si la propriété "a<b" est vérifiée, alors "c" est égal à "b". Par conséquent, "c" contient la valeur la plus grande entre "a" et "b". Enfin la valeur "c" est multipliée par 2 quoiqu'il arrive. Si on veut exécuter un bloc d'instructions après la condition, il faut utiliser le accolades.

Nous pouvons compliquer la fonction en utilisant l'instruction else. Celle-ci permet d'introduire des instructions à exécuter dans le cas où la condition n'est pas vérifiée. Les deux exemples suivants produisent exactement le même résultat que le précédent.

Code: Select all

if (a < b)
{
   int c = b;
}
else
{
   int c = a;
}
c = c * 2;


Code: Select all
if (a < b)
{
   int c = b;
   c = c * 2;
}
else
{
   int c = a;
   c = c * 2;
}



e) Les choix multiples:
Nous avons l'instruction switch qui permet de sélectionner un bloc d'instructions à exécuter en fonction de la valeur d'une expression passée en paramètre. On associe à chaque valeur un bloc d'instructions à l'aide du mot case. Toutes les valeurs non traitées provoquent l'exécution du bloc nommé portant le nom default. La valeur peut être une valeur numérique ou une chaîne de caractères.

Code: Select all
switch (valeur)
{
   case 1 :
      instruction11;
      instruction12;
      break;
   case 2 :
      instruction21;
      instruction22;
      break;
   case 'abc' :
      instruction31;
      instruction32;
      break;
   default :
      instruction1;
      instruction2;
}


La variable de sélection doit être du type entier (int, long, char), mais en aucun cas du type réel.


f) Les boucles:
L'instruction while permet de répéter l'exécution d'un bloc tant que la condition passée en paramètre est vérifiée (C'est-à-dire correspond à la valeur true). Si la condition est testée après l'exécution du bloc d'instructions, alors le bloc d'instructions sera au moins exécuté une fois. Il est possible de tester la condition avant l'exécution du bloc. Dans ce cas, il se peut que le bloc d'instructions ne soit jamais exécuté.

Code: Select all
do
{
   instruction 1;
   instruction 2;
} while (a < b)


Code: Select all
while (a < b)
{
   instruction 1;
   instruction 2;
}


Vous pouvez créer une boucle qui se répète à l'infini en créant une condition qui est toujours vérifiée.

Code: Select all
while (true)
{
   instruction 1;
   instruction 2;
}


Comme l'instruction while, l'instruction for est utilisée pour répéter l'exécution d'une série de commandes. Cependant, cette instruction est plus intéressante car elle permet en outre de préciser une commande à exécuter avant la première itération, une commande à exécuter après chaque première itération et enfin la condition qui doit être vérifiée avant d'entamer une nouvelle itération. Dans la mojorité des cas, l'instruction for est utilisée lorsqu'on désire avoir un entier qui balaye toutes les valeurs entre deux bornes. Il faut noter que chacun des paramètres de l'instruction for est optionnel.

Code: Select all
for (i=5; i<=10; i++)
{
   instruction 1;
   instruction 2;
}
analyzer
Administrateur
Administrateur
 
Posts: 27
Joined: 22 Mar 2005, 19:37

Return to C / C++

Who is online

Users browsing this forum: No registered users and 1 guest

cron