0% ont trouvé ce document utile (0 vote)
12 vues51 pages

Introduction à la Programmation C++

Ce document présente une introduction à la programmation en C++, en expliquant ce qu'est un programme et les étapes du processus de programmation. Il aborde également l'évolution du langage C++ et ses caractéristiques, ainsi que les différences entre compilateurs et interprètes. Enfin, il décrit les étapes de débogage et l'importance de la documentation dans le développement de logiciels.

Traduit par

ScribdTranslations
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
12 vues51 pages

Introduction à la Programmation C++

Ce document présente une introduction à la programmation en C++, en expliquant ce qu'est un programme et les étapes du processus de programmation. Il aborde également l'évolution du langage C++ et ses caractéristiques, ainsi que les différences entre compilateurs et interprètes. Enfin, il décrit les étapes de débogage et l'importance de la documentation dans le développement de logiciels.

Traduit par

ScribdTranslations
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

INTRODUCTION À L'INFORMATIQUE Programmation C++

LEÇON 1
PROGRAMME INFORMATIQUE / PROGRAMMATION

Objectifs :

À la fin de cette leçon, l'élève devrait être capable de :

Avoir une meilleure compréhension de ce qu'est un programme.


savoir quelles sont les étapes de la résolution de problèmes

INTRODUCTION
De nos jours, les ordinateurs sont capables d'effectuer de nombreuses tâches différentes.

des opérations mathématiques simples aux simulations animées sophistiquées.


But the computer does not create these tasks by itself, these are performed
suivant une série d'instructions prédéfinies qui conforment ce que nous appelons
aprogram.

Un ordinateur n'a pas assez de créativité pour accomplir des tâches.


qu'il n'a pas été programmé pour, donc il ne peut suivre que les instructions
des programmes qu'il a été programmé pour exécuter. Ceux qui sont responsables de
générer des programmes afin que les ordinateurs puissent effectuer de nouvelles tâches
connus sous le nom de programmeurs ou de codeurs, qui à cette fin utilisent
un langage de programmation.

QU'EST-CE QU'UN PROGRAMME ?

Le mot programme est utilisé de deux manières :

1. décrire des instructions individuelles, ou du code source, créé par le


programmeur, et pour
2. describe an entire piece of executable software.

Le code source peut être transformé en un programme exécutable de deux manières :

1. Les interprètes traduisent le code source en instructions informatiques,


et l'ordinateur agit sur ces instructions immédiatement.
Alternativement,
Les compilateurs traduisent le code source en un programme que vous pouvez exécuter.
à un moment ultérieur. Bien que les interprètes soient plus faciles à travailler, la plupart
La programmation sérieuse se fait avec des compilateurs car le code compilé
le code s'exécute beaucoup plus vite. C++ est un langage compilé.
INTRODUCTION À L'INFORMATIQUE Programmation C++

DIAGRAM 1. Compiler vs Interpreter

Compiler characteristics:
Passe beaucoup de temps à analyser et à traiter le programme
L'exécutable résultant est une forme de binaire spécifique à la machine.

code
Le matériel informatique interprète (exécute) le code résultant
L'exécution du programme est rapide

Caractéristiques de l'interprète :

Relativement peu de temps est consacré à l'analyse et au traitement du programme.

Le code résultant est une sorte de code intermédiaire


Le code résultant est interprété par un autre programme
•Program execution is relatively slow

PROCESSUS DE PROGRAMMATION

Toute programmation implique de créer quelque chose qui résout un problème.


Les problèmes peuvent varier d'une question d'une grande portée scientifique ou nationale.
importance, jusqu'à quelque chose d'aussi trivial que de soulager l'ennui personnel !

Cette section décrit une approche pour résoudre de tels problèmes - penser
comme un guide approximatif des choses que vous devriez faire en entrant dans le pays de
programming.
INTRODUCTION À L'INFORMATIQUE Programmation C++

Le processus de programmation se compose de 5 étapes. Celles-ci ne sont en réalité que


des directives qui en viennent à être reconnues comme faisant partie de l'écriture de qualité,
des programmes informatiques facilement compréhensibles et utiles.

1] Définir le problème

Le programmeur prépare une déclaration de problème décrivant les réponses


aux questions suivantes :
Quel est le travail à accomplir ?
2. Quelles sont les données d'entrée à traiter ?
3. Comment les données doivent-elles être traitées ?

4. Quel est le format souhaité de la sortie ?

2] Analyze the Problem

Un plan d'action est préparé décrivant la séquence de traitement de la


opérations. Le plan peut prendre la forme d'un
1. Tableau de décision – présente une situation complexe, les conditions et
les actions correspondantes.
2. Organigramme – montre la séquence des opérations.

3] Codez le programme

La séquence d'opérations contenue dans le diagramme de flux est traduite


en un ensemble d'instructions écrites dans des langages symboliques comme COBOL, BASIC,
C, C++, etc. Ce programme est ensuite chargé dans la mémoire d'un ordinateur
où un programme compilateur traduit cet ensemble d'instructions en machine
forme lisible.

4] Debug and Test the Program

Les programmes sont testés pour localiser et corriger les erreurs de programmation ou
bogues. Les erreurs de programmation sont dues à :

1. Erreur de bureau – Ex. Attribuer le même numéro de déclaration à deux


instructions
2. Erreur logique – ex. Omettre certains faits importants pour l'ensemble
système dans une application de paie.

Types d'erreurs
30
Erreur de compilation ou erreurs de syntaxe

se produit s'il y a une erreur de syntaxe dans le code.


Le compilateur détectera l'erreur et le programme ne même pas
compiler. À ce stade, le programmeur n'est pas en mesure de former un
programme exécutable qu'un utilisateur peut exécuter jusqu'à ce que l'erreur soit corrigée.
INTRODUCTION À L'INFORMATIQUE Programmation C++

2. Erreurs d'exécution
Les compilateurs ne sont pas parfaits et ne peuvent donc pas détecter toutes les erreurs à la compilation.
temps.
C'est particulièrement vrai pour les erreurs de logique telles que les boucles infinies. Ceci
Ce type d'erreur s'appelle une erreur d'exécution

Le débogage est effectué en utilisant ces méthodes :

a. Vérification sur table – examen manuel du programme


b. Diagnostics – l'ordinateur imprime des messages d'erreur par le biais de
les programmes informatiques.

Documentez le programme

Toutes les données relatives à un programme sont collectées, organisées et


Enregistré. Une documentation complète offre les avantages suivants :

1. Simplifie la révision du programme

2. Permet à un autre programmeur de modifier ou de maintenir le programme.

3. Facilite le fonctionnement du programme par l'opérateur.


4. Minimise le besoin de révisions majeures du programme.

DEFINITION DES TERMES

Le codage est l'acte de traduire le design en un programme réel.


écrit dans une certaine forme de langage de programmation. C'est l'étape
où vous devez réellement vous asseoir devant l'ordinateur et taper !

La programmation est alors la tâche de décrire votre conception à


ordinateur : lui enseigner votre façon de résoudre le problème

La compilation est en fait le processus de transformation du programme écrit


dans certains langages de programmation dans les instructions composées de 0
et des 0 et 1 que l'ordinateur peut réellement suivre.

Le débogage consiste simplement à examiner le programme original,


identifier les erreurs, corriger le code et le recompiler.

Code - Les instructions dans un programme informatique. Instructions écrites


by a programmer in a programming language are often calledsource
code. Instructions qui ont été converties en langage machine
que l'ordinateur comprend s'appelle code machine ou exécutable
code.
INTRODUCTION À L'INFORMATIQUE Programmation C++

LEÇON 2

INTRODUCTION AU LANGAGE DE PROGRAMMATION C++

Objectifs :

À la fin de cette leçon, l'élève devrait être capable de :

Découvrez pourquoi C++ est la norme émergente en matière de logiciels


développement.
Avoir une bonne compréhension de l'évolution du C++ et de ce que
problèmes qu'il a été conçu pour résoudre.
Identifiez les parties de l'éditeur à l'écran C++ et sachez le
commandes de base utilisées.

Contexte :

Les langages informatiques ont connu une évolution spectaculaire depuis le


Les premiers ordinateurs électroniques ont été construits pour aider dans les calculs de télémétrie.
pendant la Seconde Guerre mondiale. Au début, les programmeurs travaillaient avec les plus primitifs
instructions informatiques : langage machine. Ces instructions ont été
représenté par de longues chaînes de uns et de zéros. Bientôt, les assembleurs étaient
inventé pour cartographier les instructions machines en quelque chose de lisible et gérable par l'homme
mnémotechniques, telles que ADD et MOV.

Avec le temps, des langages de haut niveau ont évolué, tels que BASIC et COBOL.
Ces langues permettent aux gens de travailler avec quelque chose qui s'apparente à des mots et
des phrases, telles que Laisse I = 100. Ces instructions ont été traduites à nouveau en
langage machine par des interprètes et des compilateurs. Un interprète
traduit un programme au fur et à mesure qu'il le lit, transformant les instructions du programme, ou
code, directement en actions. Un compilateur traduit le code en un
forme intermédiaire. Cette étape s'appelle la compilation, et produit un objet
fichier. Le compilateur invoque ensuite un éditeur de liens, qui transforme le fichier objet en un
programme exécutable.

Parce que les interprètes lisent le code tel qu'il est écrit et l'exécutent.
Coder sur le vif, les interprètes sont faciles à utiliser pour le programmeur.
Les compilateurs, cependant, introduisent les étapes supplémentaires de compilation et de liaison.
code, ce qui est gênant. Les compilateurs produisent un programme qui est très rapide
à chaque fois qu'il est exécuté. Cependant, la tâche chronophage de traduire le
La traduction du code source en langage machine a déjà été accomplie.

Un autre avantage de nombreux langages compilés comme le C++ est que vous
peut distribuer le programme exécutable aux personnes qui n'ont pas le
compilateur. Avec un langage interprété, vous devez avoir le langage pour exécuter
le programme.
INTRODUCTION À L'INFORMATIQUE Programmation C++

Pendant de nombreuses années, l'objectif principal des programmeurs informatiques était de


écrire des morceaux de code courts qui s'exécuteraient rapidement. Le programme nécessaire
être petit, car la mémoire était chère, et elle devait être rapide,
car la puissance de traitement était également coûteuse. À mesure que les ordinateurs sont devenus
plus petits, moins chers et plus rapides, et alors que le coût de la mémoire a chuté, ces
les priorités ont changé. Aujourd'hui, le coût du temps d'un programmeur est bien supérieur
dépassent le coût de la plupart des ordinateurs utilisés par les entreprises. Bien-
Le code écrit et facile à maintenir est très recherché. Facile à maintenir signifie
que, à mesure que les exigences commerciales évoluent, le programme peut être étendu et
amélioré sans grande dépense.

Comment C++ a-t-il évolué ?

Le langage de programmation C++ a une histoire qui remonte à 1979,


lorsque Bjarne Stroustrup travaillait sur sa thèse de doctorat. Un des
les langages avec lesquels Stroustrup a eu l'occasion de travailler étaient un langage
appelé Simula, qui comme son nom l'indique est un langage principalement conçu
pour les simulations. Le langage Simula 67 - qui était la variante qui
Stroustrup a travaillé avec - est considéré comme le premier langage à supporter le
paradigme de programmation orientée objet. Stroustrup a constaté que cela
le paradigme était très utile pour le développement de logiciels, cependant le Simula
la langue était beaucoup trop lente pour une utilisation pratique.

Peu de temps après, il commença à travailler sur "C avec Classes", qui en tant que
le nom implique qu'il devait être un sur-ensemble du langage C. Son objectif était
pour ajouter la programmation orientée objet dans le langage C, qui était et
still est une langue bien respectée pour sa portabilité sans sacrifier
vitesse ou fonctionnalité de bas niveau. Son langage comprenait des classes,
héritage de base, en ligne, arguments de fonction par défaut et type fort
vérifiant en plus de toutes les fonctions du langage C.

En 1983, le nom du langage a été changé de C avec Classes à


C++. L'opérateur ++ dans le langage C est un opérateur pour l'incrémentation
une variable, qui donne un aperçu de la manière dont Stroustrup considérait le
langue. De nombreuses nouvelles fonctionnalités ont été ajoutées à cette époque, la plus
notables parmi lesquelles figurent les fonctions virtuelles, la surcharge de fonction, les références

avec le symbole &, le mot-clé const, et des commentaires sur une seule ligne utilisant
deux barres obliques (ce qui est une caractéristique empruntée au langage BCPL).

In 1985, Stroustrup's reference to the language entitled The C++


Le langage de programmation a été publié. La même année, C++ a été
mis en œuvre en tant que produit commercial. La langue n'était pas officiellement
standardized yet, making the book a very important reference. The
INTRODUCTION À L'INFORMATIQUE Programmation C++

En 1990, le Manuel de référence annoté C++ a été publié. Le même


l'année, le compilateur Turbo C++ de Borland serait commercialisé comme un produit commercial
produit. Turbo C++ a ajouté une pléthore de bibliothèques supplémentaires qui pourraient
avoir un impact considérable sur le développement de C++. Bien que Turbo
La dernière version stable de C++ date de 2006, le compilateur est toujours largement utilisé.

En 1998, le comité de normalisation du C++ a publié la première norme internationale


norme pour C++ ISO/IEC 14882:1998, qui serait informellement connue
comme C++98.

En 2005, le comité des normes C++ a publié un rapport technique


(doublé TR1) détaillant diverses fonctionnalités qu'ils prévoyaient d'ajouter au
dernier standard C++. Le nouveau standard a été informellement surnommé C++0x comme
il était prévu de sortir quelque temps avant la fin du premier
décennie. Ironiquement, cependant, la nouvelle norme ne serait pas publiée avant
mi-2011. Plusieurs rapports techniques ont été publiés jusqu'à cette date, et
certains compilateurs ont commencé à ajouter un support expérimental pour les nouvelles fonctionnalités.

Au milieu de 2011, le nouveau standard C++ (appelé C++11) a été terminé.


Le projet de la bibliothèque Boost a eu un impact considérable sur le nouveau
standard, et certains des nouveaux modules ont été dérivés directement de
les bibliothèques Boost correspondantes. Certaines des nouvelles fonctionnalités incluent régulièrement

expression de support (des détails sur les expressions régulières peuvent être trouvés ici), un
bibliothèque de randomisation complète, une nouvelle bibliothèque de temps C++, atomiques
support, une bibliothèque de threads standard (qui jusqu'en 2011, à la fois C et
C++ manquait), une nouvelle syntaxe de boucle for fournissant une fonctionnalité similaire
aux boucles for each dans certains autres langages, le mot-clé auto, nouveau
classes de conteneurs, meilleur support pour les unions et les listes d'initialisation de tableaux,

et des modèles variés.

La norme ANSI

Le Comité des Normes Accréditées,


fonctionnant sous les procédures de la
Institut national des normes américaines
(ANSI) travaille à créer un international
norme pour C++.

La norme ANSI est une tentative d'assurer


le C++ est portable--ce code que vous écrivez pour
Le compilateur de Microsoft compilera sans
erreurs, en utilisant un compilateur de tout autre
vendeur.
INTRODUCTION À L'INFORMATIQUE Programmation C++

L'ENVIRONNEMENT DE DÉVELOPPEMENT INTÉGRÉ C++

PIÈCES FONCTION/UTILISATION

1 Barre de menu C'est une région en haut de l'écran où se trouve une liste déroulante de
les menus sont affichés.

2 Fermer la boîte Trouvé dans le coin supérieur gauche de l'écran qui est utilisé pour
fermer la fenêtre active.

3 Barre de titre Situé en dessous de la barre de menu, et est utilisé pour afficher le nom
de la fenêtre active.

4 Bureau/Éditeur La zone au milieu de l'écran où plusieurs listes de


différents types de fenêtres peuvent être placés.

5 Cadre Sert de bordure de fenêtre

6 Redimensionner le coin Il est utilisé pour changer la taille de la fenêtre active.

7 Message se trouve sous la fenêtre d'édition et est utilisé pour afficher diverses
Compilateur messages de compilateur ou d'éditeur de liens

Fenêtre

8 Zone d'état Trouvé en bas de l'écran qui contient des listes de


raccourcis clavier. Il sert également de source d'aide pour l'utilisateur.
9 Numéro de fenêtre Il identifie le numéro de votre fenêtre.

Barre de défilement Utilisé pour faire défiler le contenu de la fenêtre horizontalement ou


verticalement.

11Zoom Boîte Utilisé pour afficher la fenêtre en plein écran


INTRODUCTION À L'INFORMATIQUE Programmation C++

COMMANDES DE RACCORCI CLAVIER

Comment faire : Méthode


Activez la barre de menus Appuyez sur F10
Méthode 1 : Appuyez sur F10
Utilisez les touches fléchées pour sélectionner le menu
Sélectionnez un menu parmi le
barre de menu
Appuyez sur la touche ENTRÉE et le sous-menu apparaît
Méthode 2 : Appuyez sur ALT + la touche mise en surbrillance de votre choix

dans le menu (ex. ALT + F pour le menu Fichier)


Sélectionnez une commande depuis le Appuyez sur ALT + la touche mise en surbrillance de votre choix dans le menu

sous-menu Utilisez les touches fléchées pour sélectionner une commande,


appuyez sur la touche ENTER
Annuler une commande Appuyez sur la touche Échap
note : Appuyer sur les touches ESC annule toute sélection dans un
sous-menu et revient au menu précédent
Créer un programme Appuyez sur ALT + F
(pour activer le menu fichier, un sous-menu apparaît)
Choisissez l'option NOUVELLE
Appuyez sur la touche ENTER
Tapez votre programme
Enregistrer un nouveau programme Appuyez sur ALT + F
Utilisez les touches FLÈCHE pour accéder à la commande ENREGISTRER SOUS
Appuyez sur la touche ENTRÉE (une boîte de dialogue Enregistrer sous apparaît)
Appuyez sur la touche TAB jusqu'à ce que vous atteigniez la zone de saisie
Dans la zone de saisie, tapez le nom de votre programme
Appuyez à nouveau sur la touche TAB jusqu'à atteindre le bouton OK,
appuyez sur la touche ENTRÉE
Enregistrer un programme modifié Méthode 1 : Appuyez sur ALT + F
Utilisez les touches fléchées pour aller à la commande SAUVEGARDER, appuyez sur

la touche ENTRÉE
Méthode 2 : Appuyez sur F2
Ouvrir un programme Méthode 1 : Appuyez sur ALT + F
Utilisez les touches FLÈCHE pour accéder à la commande OUVRIR
Appuyez sur la touche ENTRÉE (une boîte de dialogue OUVRIR apparaît
Press TAB until you reach the input box
Dans la zone de saisie, tapez le nom de votre programme
Appuyez sur TAB jusqu'à atteindre le bouton OK, appuyez sur le
Touche ENTRÉE
Méthode 2 : Appuyez sur F3
(une boîte de dialogue OUVERTES apparaît)
Utilisez les touches FLÈCHE pour aller au nom du programme que vous
voulez ouvrir, appuyez sur la touche ENTRÉE
Compiler un programme Méthode 1 : Appuyez sur ALT + C (pour activer le COMPILATEUR
menu) Utilisez les touches FLÈCHE pour aller au COMPILER
commande, appuyez sur la touche ENTER
Méthode 2 : Appuyez sur ALT + F9
Exécuter un programme Méthode 1 : Appuyez sur ALT + R
(pour activer la commande RUN)
Utilisez les touches FLÈCHE pour accéder à la commande EXÉCUTER, appuyez sur

la touche ENTRÉE
Méthode 2 : Appuyez sur CTRL + F9
Quitter Turbo C++ Méthode 1 : Appuyez sur ALT + F
(pour activer le menu FICHIER)
Utilisez les touches FLÈCHE pour aller à la commande QUITTER, appuyez sur
touche ENTRÉE
Méthode 2 : Appuyez sur ALT + X (une boîte de dialogue de confirmation
INTRODUCTION À L'INFORMATIQUE Programmation C++

LEÇON 3

DÉMARRER AVEC UN PROGRAMME C++

Objectifs :

À la fin de cette leçon, l'élève devrait être capable de :

Définir les identifiants et connaître leur importance


Sachez ce que sont les mots réservés et comment utiliser les types de données.
Savoir comment définir et déclarer des variables et des constantes dans un
programme.

KEYWORDS

Les mots-clés sont des identificateurs réservés prédéfinis qui ont une signification spéciale.
significations. Ils ne peuvent pas être utilisés comme identifiants dans votre programme.

Mots réservés

Mots "réservés" par le langage de programmation pour exprimer


diverses déclarations et constructions, ainsi ils ne peuvent pas être redéfinis par
le programmeur.

Les mots-clés réservés standards sont :

asm, auto, bool, break, case, catch, char, class, const,


const_cast, continue, default, delete, do, double, dynamic_cast,
else, enum, explicit, export, extern, false, float, for, friend,
goto, if, inline, int, long, mutable, namespace, new, operator,
private, protected, public, register, reinterpret_cast, return,
short, signed, sizeof, static, static_cast, struct, switch,
template, this, throw, true, try, typedef, typeid, typename,
union, unsigned, using, virtual, void, volatile, wchar_t, while

De plus, certaines représentations alternatives pour certains opérateurs ne peuvent pas être utilisées.
comme identifiants car ce sont des mots réservés dans certaines circonstances :

et, et_eq, bitand, bitor, compl, non, non_eq, ou, ou_eq, xor
xor_eq

Votre compilateur peut également inclure certains mots-clés réservés spécifiques supplémentaires.
INTRODUCTION À L'INFORMATIQUE Programmation C++

IDENTIFIANTS

composé d'une séquence de lettres, de chiffres et du caractère spécial


_ (souligné)
ceux-ci sont définis par le programmeur, donc ils devraient être
descriptif.
Il doit se composer uniquement de lettres, de chiffres et de tirets bas
Il ne peut pas commencer par un chiffre ou un trait de soulignement.
Un identifiant défini dans la bibliothèque standard C++ ne devrait pas être
redéfinie.

Très important : Le langage C++ est un langage « sensible à la casse ».


signifie qu'un identifiant écrit en lettres majuscules n'est pas équivalent à un autre
un avec le même nom mais écrit en minuscules. Ainsi, par exemple,
leRÉSULTATla variable n'est pas la même que lerésultatvariable ou
leResult variable. Ce sont trois identifiants de variable différents.

TYPE DE DONNÉES (Le plus couramment utilisé)

Définit comme l'ensemble des valeurs qu'une variable peut stocker, ainsi qu'un ensemble
des opérations qui peuvent être effectuées sur cette variable.

Type Description
bool Stocke soit la valeur vraie soit fausse.

char Typiquement un seul octet (un octet). C'est un entier


type. Il représente le caractère sur votre clavier–
lettres de l'alphabet, chiffres ou caractères spéciaux
int La taille d'entier la plus naturelle pour la machine. C'est un
nombre entier ou une série de chiffres décimaux qui peuvent être
précédé d'un signe positif ou négatif.
flottant Une valeur à virgule flottante simple précision. Un nombre avec
partie décimale

double Une valeur à virgule flottante double précision. un float spécial


qui peut stocker des chiffres significatifs et occuper
plus d'espace mémoire.

long un grand nombre entier


Tableau 1. Types de données couramment utilisés.
INTRODUCTION À L'INFORMATIQUE Programmation C++

Plage typique

Le tableau suivant montre le type de variable, combien de mémoire il


prend pour stocker la valeur mémoire et quelle est la valeur maximale et minimale
qui peuvent être stockés dans ce type de variables.

Type Typical Bit Width Plage Typique


char 1octet -127 à 127 ou 0 à 255
int 4octets -2147483648 à 2147483647
long 4octets -2 147 483 647 à 2 147 483 647
int
flottant 4octets +/- 3,4e +/- 38 (~7 chiffres)
double 8octets +/- 1,7e +/- 308 (~15 chiffres)
Tableau 2. Plage typique des types de données

Remarque : Les valeurs des colonnesLa taille et la portée dépendent du système.


le programme est compilé pour. Les valeurs indiquées ci-dessus sont celles trouvées sur la plupart des systèmes 32 bits.

systèmes. Mais pour d'autres systèmes, la spécification générale est que dans le système.
taille naturelle suggérée par l'architecture système (un "mot") et les quatre
les types entiers char, short, int et long doivent chacun être au moins aussi grands que les autres
précédant, avec char étant toujours de taille un octet. Il en va de même pour le point flottant
types float, double et long double, où chacun doit fournir au moins autant
précision comme la précédente.

CODE BARRE C++ Code d'exemple

#include<iostream.h>
CODE SIGNIFICATION #include<conio.h>
principale()
alerte (cloche) {
\n nouvelle ligne cout<<”H E L L O”;
\b retour arrière cout << "\t\"MONDE\"";
getch();
\f saut de page
}
\r retour chariot
\t onglet Sortie
\v tabulation verticale
H
\\ barre oblique inverse
E
\’ guillemet simple L
\” guillemet double L
\0 null O
MONDE
INTRODUCTION À L'INFORMATIQUE Programmation C++

VALEURS DES DONNÉES

VARIABLES - identifiants qui peuvent stocker une valeur qui peut être changée et peut
stocker des littéraux ou un type de données structurées.

Déclaration de variable

consiste en un type de données et un nom de variable.


L'effet est qu'il réserve de l'espace mémoire pour chacune des variables.
déclare.

Pour utiliser une variable en C++, nous devons d'abord la déclarer en spécifiant
quel type de données nous voulons qu'il soit. La syntaxe pour déclarer une nouvelle variable est de
écrivez le spécificateur du type de données souhaité (comme int, bool, float...) suivi
par un identifiant de variable valide.

Format: <data type> <variable_name> ;

Par exemple :

Ce sont deux déclarations valides de variables. La première


on déclare une variable de type int avec le
1int a; identifier a. Le second déclare une variable de
2float monnombre; type flottant avec the identifier mynumber. Once
déclarées, les variables a et mynumber peuvent être utilisées
dans le reste de leur champ d'application dans le programme.

Si vous allez déclarer plus d'une variable du même type, vous


peut les déclarer tous dans une seule instruction en séparant leurs identifiants
avec des virgules. Par exemple :

int a, b, c;

Cela déclare trois variables (a, b et c), toutes int a;


d'eux de type int, et a exactement le 2int b;
même signification que : 3int c;

Instruction d'affectation en C++

peut être utilisé pour attribuer des valeurs à des variables de tous types.

Format: <variable> = Constant


Variable
Ex.:num1 = num; Expression arithmétique
num2 = 23;
num3 = tot1 + tot2;
INTRODUCTION À L'INFORMATIQUE Programmation C++

PORTÉE DES VARIABLES

Toutes les variables que nous avons l'intention d'utiliser dans un programme doivent avoir

a été déclaré avec son spécificateur de type à un point antérieur du code, comme nous
fait dans le code précédent au début du corps de la fonction principale
quand nous avons déclaré que a, b et result étaient de type int.

Une variable peut avoir soit une portée globale, soit une portée locale.

A. Une variable globale est une variable déclarée dans le


corps principal du code source, en dehors de toutes les fonctions.

B. Une variable locale est celle déclarée dans le corps


de un fonction ou bloc. a

Diagramme 2. Portée des variables

Global variablescan be referred from anywhere in the code, even inside


fonctions, chaque fois qu'il est après sa déclaration.

La portée des variables locales est limitée au bloc contenu dans des accolades ({})
où ils sont déclarés. Par exemple, s'ils sont déclarés au début
du corps d'une fonction (comme dans functionmain) leur portée est entre
point de déclaration et la fin de cette fonction. Dans l'exemple ci-dessus, cela
cela signifie que si une autre fonction existait en plus de main, les variables locales
déclaré dansmain ne pouvait pas être accessible depuis l'autre fonction et vice versa.
INTRODUCTION À L'INFORMATIQUE Programmation C++

CONSTANTES

Les constantes sont des expressions avec une valeur fixe. Ce sont des identificateurs qui peuvent
stockez des valeurs qui ne peuvent pas être modifiées. Sont généralement en lettres majuscules.
des_soulignés_entre_chaque_mot_pour_distinguer_des_variables.

[Link] LETTRE = 'I';


int MILES = 23;

Il existe deux manières simples en C++ de définir des constantes :

1. Utiliser le mot clé const.


2. Utiliser #define le préprocesseur.

1. Constante déclarée (const)


Avec le préfixe const, vous pouvez déclarer des constantes avec un type spécifique dans le
de la même manière que vous le feriez avec une variable :

Ici, largeur du chemin et tabulateur sont deux types


const int largeurDuChemin = 100;constantes. Elles sont traitées comme
c o n s t c h a r t a b u l a t e u rvariables
= 'régulières
\ t ' ; sauf que leurs valeurs
ne peut être modifié après leur définition.

2. #définir DIRECTIVE

Oriente le compilateur à remplacer toutes les instances de constant_identifier


avec une valeur littérale chaque fois qu'elle apparaît dans le programme.
L'utilisation principale d'une directive #define est de faciliter le
programmeur pour changer toutes les occurrences d'une certaine valeur à travers un
programme.
Une ligne #define peut apparaître n'importe où dans un programme, mais elle est normalement
placé à la colonne 1. Cela n'affecte que les lignes qui viennent après.

Format : #define identifiant_constant littéral


Ex.: #define SCHOOL “ICCT Colleges”
#define INITIAL 'I'

Exemple de code

int a, b; char a;
#define a 1; #define a ”HELLO WORLD”;
#define b 2; cout << "La somme est : " << a;
cout << "La somme est : " << a + b;

Sortie

La somme est : 3 Bonjour le monde


INTRODUCTION À L'INFORMATIQUE Programmation C++

TYPES DE DONNÉES

Les LITTÉRAUX sont le type de constantes le plus évident. Ils sont utilisés pour
express particular values within the source code of a program. We have
déjà utilisé précédemment pour donner des valeurs concrètes aux variables ou à
exprimer des messages que nous voulions que nos programmes affichent, par exemple, quand
nous avons écrit :

a = 5 ; Le 5 dans ce morceau de code était une constante littérale.

Les constantes littérales peuvent être divisées en littéraux numériques, littéraux non numériques

et les littéraux booléens

A. Litteraux numériques
Peut être subdivisé en Nombres Entiers et Nombres Réels.

1.) Nombres entiers ou numéros entiers

11776 Ce sont des constantes numériques qui identifient les décimales entières
2707 valeurs. Remarquez que pour exprimer une constante numérique, nous faisons
3-273 ne pas avoir à écrire des guillemets ni de caractères spéciaux

Il ne fait aucun doute que c'est une constante : chaque fois que nous écrivons1776dans un

programme, nous ferons référence à la valeur 1776.

En plus des nombres décimaux (ceux que nous avons tous l'habitude d'utiliser chaque
jour), C++ permet l'utilisation de nombres octaux (base 8) et hexadécimaux
nombres (base 16) en tant que constantes littérales. Si nous voulons exprimer un octal
nous devons le précéder de a0 (un zéro caractère). Et pour pouvoir
pour exprimer un nombre hexadécimal, nous devons le précéder de
caractères0x(zéro,x). Par exemple, les constantes littérales suivantes sont toutes
équivalent l'un à l'autre :
Tous ces nombres représentent le même chiffre : 75
175 // decimal
(seventy-five) expressed as a base-10 numeral,
20113 // octal
numéral octal et numéral hexadécimal
30x4b // hexadécimal
respectivement.

Les constantes littérales, tout comme les variables, sont considérées comme ayant un type de données spécifique.

Par défaut, les littéraux entiers sont de type int. Cependant, nous pouvons les forcer à
soit non signé en ajoutant le caractère u, soit long par
ajoutant/:

75 // entier Dans les deux cas, le suffixe peut être spécifié en utilisant
75u // entier non signé soit des lettres majuscules ou minuscules.
INTRODUCTION À L'INFORMATIQUE Programmation C++

2.) Nombres réels ou littéraux à virgule flottante

Ils expriment des nombres avec des décimales et/ou des exposants. Ils peuvent
inclure soit un point décimal, soit un caractère (qui exprime "par dix à la
"Xème hauteur", où X est une valeur entière qui suit le caractère trois)
à la fois un point décimal et un caractère :

Ce sont quatre nombres valides avec des décimales.


expressed in C++. The first number is PI, the
le deuxième est le nombre d'Avogadro, le
13.14159 // 3.14159
le troisième est la charge électrique d'un électron (un
26,02e23 // 6,02 x 10^23
nombre extrêmement petit) -tous
31,6e-19 // 1,6 x 10^-19
approximé - et le dernier est le nombre
43,0 3.0
trois exprimé sous forme numérique flottante
littéral.

Le type par défaut pour les littéraux à virgule flottante est double. Si vous voulez explicitement...
exprimez un flottant le long d'un littéral numérique double, vous pouvez utiliser
les suffixes respectively :

Any of the letters that can be part of a floating


13.14159L // double long la constante numérique ponctuelle (e, f, l) peut être
26,02e23f // flottant écrit en utilisant soit des lettres minuscules soit des lettres majuscules

sans aucune différence dans leurs significations.

Remarque :

Dans la définition des littéraux numériques, les règles suivantes doivent être suivies :
1] Pas de virgule.
Aucun espace entre le signe unaire (+ ou -) et les chiffres.
Doit commencer et se terminer par un chiffre.

B. Littéraux non numériques


Peut être sous la forme d'un caractère ou d'une série de caractères (chaînes).

Les deux premières expressions représentent un seul caractère


'z' des constantes, et les deux suivants représentent des littéraux de chaîne
'p' composé de plusieurs caractères. Remarquez qu'il représente un
Bonjour le monde un caractère unique, nous l'enfermons entre des quotes simples (') et
Comment ça va ? exprimer une chaîne (qui se compose généralement de plus d'un
caractère) nous l'enfermons entre des guillemets doubles (")

Remarque :

Les littéraux de caractères sont entourés de guillemets simples. Si le littéral commence par L
(MAJUSCULES SEULEMENT), C'EST UN LITTÉRAL DE CARACTÈRE LARGE (PAR EXEMPLE, L'x') ET DOIT ÊTRE STOCKÉ
dans le type de variable wchar_t. Sinon, c'est un littéral de caractère étroit (par exemple, 'x')
et peut être stocké dans une simple variable de type char.

Les littéraux de chaîne sont enfermés dans des guillemets doubles. Une chaîne contient des caractères qui sont similaires
aux littéraux de caractères : caractères simples, séquences d'échappement et caractères universels. Vous pouvez
casser une longue ligne en plusieurs lignes en utilisant des littéraux de chaîne et en les séparant par
INTRODUCTION À L'INFORMATIQUE Programmation C++

STRUCTURE D'UN PROGRAMME


La meilleure façon de commencer à apprendre un langage de programmation est probablement de
écrire un programme. Par conséquent, voici notre premier programme :

1 // mon premier programme en C++ Bonjour le monde !


2
3 #inclure <iostream.h>
4 #include <conio.h>
5
6 int main ()
7
8 cout << "Bonjour le monde !";
9 getch();
10 }

Nous allons examiner ligne par ligne le code que nous venons d'écrire :

// mon premier programme en C++

Ceci est une ligne de commentaire. Toutes les lignes commençant par deux signes de barre oblique (//)

sont considérés comme des commentaires et n'ont aucun effet sur le comportement de
programme. Le programmeur peut les utiliser pour inclure de courtes explications ou
observations au sein du code source lui-même. Dans ce cas, la ligne est une brève
description de ce qu'est notre programme.

#include<iostream.h>

Les lignes commençant par un signe dièse (#) sont des directives pour le
préprocesseur. Ce ne sont pas des lignes de code régulières avec des expressions mais
informations pour le préprocesseur du compilateur. Dans ce cas, le
La directive #include <iostream> indique au préprocesseur d'inclure le
fichier standard iostream. Ce fichier spécifique (iostream) inclut les déclarations
de la bibliothèque d'entrée-sortie standard de base en C++, et elle est incluse parce que
sa fonctionnalité sera utilisée plus tard dans le programme.

Instruire C++ d'inclure le fichier d'en-tête conio.h lors de la compilation


et de laquelle la fonction getch() est également définie dans conio.h

Règles lors de l'insertion de la directive #include dans un programme :

Il ne doit y avoir aucun espace entre le caractère dièse # de la


inclure le mot-clé.
b. Le # doit commencer dans la colonne 1 du fichier source et il doit y avoir
pas de blancs ou de tabulations précédents.
INTRODUCTION À L'INFORMATIQUE Programmation C++

int main ()

Cette ligne correspond au début de la définition du principal


La fonction principale est le point par lequel tous les programmes C++ commencent.
leur exécution, indépendamment de son emplacement dans le code source. Cela fait
peu importe s'il y a d'autres fonctions avec d'autres noms définis
avant ou après - les instructions contenues dans la définition de cette fonction
seront toujours les premiers à être exécutés dans n'importe quel programme C++. Pour cela
même raison, il est essentiel que tous les programmes C++ aient une fonction principale.

Le mot main est suivi dans le code d'une paire de parenthèses (()).
C'est parce que c'est une déclaration de fonction : En C++, ce qui différencie une
La déclaration de fonction d'autres types d'expressions sont ces parenthèses
qui suit son nom. En option, ces parenthèses peuvent contenir une liste de
paramètres à l'intérieur d'eux.

Juste après ces parenthèses, nous pouvons trouver le corps du principal


fonction enfermée dans des accolades ({}). Ce qui est contenu dans ces accolades est
ce que la fonction fait lorsqu'elle est exécutée.

cout << " Bonjour le monde !";

Cette ligne est une instruction C++. Une instruction est une simple ou composée.
expression qui peut réellement produire un effet. En fait, cette déclaration
effectue la seule action qui génère un effet visible dans notre premier programme.

cout est le nom du flux de sortie standard en C++, et le


le sens de l'ensemble de la déclaration est d'insérer une séquence de caractères (dans
ce cas leBonjour le monde séquence de caractères) dans la sortie standard
flux (cout, qui correspond généralement à l'écran).

Remarquez que la déclaration se termine par un point-virgule (;). Cela


le caractère est utilisé pour marquer la fin de la déclaration et en fait, il doit être
inclus à la fin de toutes les instructions d'expression dans tous les programmes C++ (un
l'une des erreurs de syntaxe les plus courantes est en effet d'oublier d'inclure certains
point-virgule après une déclaration).

Vous avez peut-être remarqué que toutes les lignes de ce programme ne s'exécutent pas
actions lorsque le code est exécuté. Il y avait des lignes contenant uniquement
commentaires (ceux commençant par //). Il y avait des lignes avec des directives pour le
préprocesseur du compilateur (ceux commençant par #). Ensuite, il y avait des lignes qui
a commencé la déclaration d'une fonction (dans ce cas, la fonction principale) et,
finalement des lignes avec des déclarations (comme l'insertion dans cout), qui étaient toutes
inclus dans le bloc délimité par les accolades ({}) de la fonction principale.
INTRODUCTION À L'INFORMATIQUE Programmation C++

Le programme a été structuré en différentes lignes afin d'être plus


lisible, mais en C++, nous n'avons pas de règles strictes sur la façon de séparer
instructions sur des lignes différentes. Par exemple, au lieu de

1 int main ()
2
3 cout << " Bonjour le monde !";
4 getch();
5}

Nous aurions pu écrire :

int main () { cout << "Bonjour le monde !"; return 0; }

Tout cela en une seule ligne et cela aurait exactement eu le même sens que
le code précédent.

En utilisant le programme d'exemple « Bonjour le monde » dans la leçon précédente,

créez votre propre programme qui affichera votre Nom, Adresse, Genre,
Birthday, Course, Year, Height and Weight. Refer your code on the sample
target output below.

ÉCHANTILLON CIBLE

Name : Jake Dela Cruz

Adresse : Rosario, ville de Pasig

Gender : Male

Birthday : January 17, 1990

Cours : BSIT

Year : 4thannée

Height : 5’11

Weight : 60 kgs
INTRODUCTION À L'INFORMATIQUE Programmation C++

Qu'est-ce que des commentaires ?

Les commentaires sont des parties du code source ignorées par le compilateur.
Ils ne font tout simplement rien. Leur but est seulement de permettre au programmeur de
insérer des notes ou des descriptions intégrées dans le code source.

C++ prend en charge deux manières d'insérer des commentaires :

1 // commentaire de ligne
2 /* commentaire de bloc */

Le premier d'entre eux, connu sous le nom de commentaire en ligne, rejette tout à partir de
où la paire de barres obliques (//) est trouvée jusqu'à la fin de celle-ci
ligne.

2. Le second, connu sous le nom de commentaire en bloc, rejette tout


entre les /*personnages et la première apparition de
les*/personnages, avec la possibilité d'inclure plus d'une ligne.

Exemple :

1 /* mon deuxième programme en C++ Bonjour le monde ! Je suis un C++


2 avec plus de commentaires */ programme
3
4 #include <iostream>
5 #include<conio.h>
6 int main ()
7
8 cout << "Bonjour le monde! ";
9 // affiche Bonjour le monde!
10 cout << "Je suis un programme C++";
11 // imprime Je suis un programme C++
12 getch();
}

Remarque :

If you include comments within the source code of your programs


sans utiliser les combinaisons de caractères de commentaire //, /*ou*/
le compilateur les prendra comme s'ils étaient des expressions C++, la plupart
likely causing one or several error messages when you compile it.
INTRODUCTION À L'INFORMATIQUE Programmation C++

LEÇON 4

OPÉRATEURS C++, EXPRESSIONS, ÉNONCÉS, ENTRÉE STANDARD


ET SORTIE

Objectifs :

À la fin de cette leçon, l'élève devrait être capable de :

Savoir ce qu'est une expression.


Savoir comment construire un bloc d'instructions
Connaître la différence entre la division entière et l'utilisation du modulo
Savoir comment combiner des opérateurs mathématiques et d'affectation
Connaître la différence entre l'incrément et le décrément et
suffixe de préfixe.
Comment utiliser l'entrée et la sortie standards dans un programme complexe.

DÉCLARATION DE BLOC ET DÉCLARATION COMPOSÉE

Tout endroit où vous pouvez mettre une seule déclaration, vous pouvez mettre une commande.
déclaration, également appelée déclaration de bloc. Un bloc commence par un
accolade ouvrante ({) et se termine par une accolade fermante (}).

Exemple :

{
temp = a; Ce bloc de code agit comme un
a=b; déclaration et échange les valeurs dans le
b = temp; variables a et b.
}

EXPRESSIONS

Tout ce qui évalue à une valeur est une expression en C++. Une expression
on dit qu'il retourne une valeur. Ainsi, 3+2 retourne la valeur de 5 et est donc un
expression. Toutes les expressions sont des déclarations.

Voici trois exemples :

3.2 // retourne la valeur 3.2

PI // constante float que la valeur 3.14

Secondes par minute //int const qui retourne 60


INTRODUCTION À L'INFORMATIQUE Programmation C++

SORTIE / ENTRÉE DE BASE

En utilisant la bibliothèque d'entrée et de sortie standard, nous pourrons interagir


avec l'utilisateur en imprimant des messages à l'écran et en obtenant la réponse de l'utilisateur

entrée à partir du clavier.

C++ utilise une abstraction pratique appelée flux pour effectuer des entrées.
et des opérations de sortie sur des supports séquentiels tels que l'écran ou le
clavier. Un flux est un objet où un programme peut soit insérer soit
extraire des caractères de/vers cela. Nous n'avons vraiment pas besoin de nous soucier de beaucoup

spécifications concernant les supports physiques associés au flux - nous


il suffit de savoir qu'il acceptera ou fournira des caractères de manière séquentielle.

La bibliothèque standard C++ inclut le fichier d'en-tête iostream, où


les objets de flux d'entrée et de sortie standard sont déclarés.

SORTIE STANDARD (cout)

Par défaut, la sortie standard d'un programme est l'écran, et le


Objet de flux C++ défini pour y accéder est iscout.

coutis utilisé en conjonction avec l'opérateur d'insertion, qui s'écrit


comme<<(deux « signes moins que »).

1 cout << "Phrase de sortie"; // imprime Phrase de sortie à l'écran


2 cout << 120; // affiche le nombre 120 à l'écran
3 cout << x; // affiche le contenu de x sur
écran

L'opérateur << insère les données qui le suivent dans le flux


précédant cela. Dans les exemples ci-dessus, il a inséré la chaîne constante stringOutput
phrase, la constante numérique 120 et la variable x dans le standard
flux de sortie cout. Remarquez que la phrase dans la première instruction est
enclavé entre des guillemets doubles ("), car c'est une chaîne constante de
caractères. Chaque fois que nous voulons utiliser des chaînes de caractères constantes, nous
doivent être enfermés entre des guillemets (") afin qu'ils puissent être clairement
distingué des noms de variables. Par exemple, ces deux phrases ont
des résultats très différents :

1 cout << "Bonjour"; // affiche Bonjour


2 cout << Bonjour; // imprime le contenu de la variable Hello
INTRODUCTION À L'INFORMATIQUE Programmation C++

L'opérateur d'insertion (<<) peut être utilisé plusieurs fois dans un seul
statement:

cout << "Bonjour, " << "Je suis " << "une déclaration C++";

Cette dernière déclaration afficherait le message :

Bonjour, je suis une instruction C++

De plus, pour ajouter une nouvelle ligne, vous pouvez également utiliser le manipulateur endl.

example:
Imprimerait :
cout << "Première phrase." << endl;
2cout << "Deuxième phrase." << endl;
Première phrase.
Deuxième phrase.

Le manipulateur endl produit un caractère de nouvelle ligne, exactement comme le


l'insertion de ' ' le fait, mais elle a également un comportement supplémentaire lorsqu'elle est utilisée

avec des flux tamponnés : le tampon est vidé. De toute façon, cout sera un
un flux non mis en tampon dans la plupart des cas, donc vous pouvez généralement utiliser les deux

le caractère d'échappement et le manipulateur endl pour spécifier un nouveau


ligne sans aucune différence dans son comportement.

ENTRÉE STANDARD (cin)

L'appareil d'entrée standard est généralement le clavier. La gestion du


l'entrée standard en C++ se fait en appliquant l'opérateur surchargé de
extraction (>>) sur lecinstream. L'opérateur doit être suivi par le
variable qui stockera les données qui vont être extraites de la
flux. Par exemple :

La première déclaration déclare une variable de type int appelée age.


1 int âge; et le deuxième attend une saisie de cin (le clavier)
2 cin >> âge; afin de le stocker dans cette variable entière.

cincan ne traite l'entrée du clavier qu'une seule fois


la touche RETOUR a été enfoncée. Par conséquent, même si vous demandez un seul
personnage, l'extraction depuis cin ne traitera pas l'entrée tant que l'utilisateur
pressesRETURNafter the character has been introduced.

Vous devez toujours considérer le type de la variable que vous utilisez


comme un conteneur avec des extractions. Si vous demandez un entier, vous recevrez
un entier, si vous demandez un caractère vous obtiendrez un caractère et si vous
INTRODUCTION À L'INFORMATIQUE Programmation C++

Échantillon

1 // exemple i/o
2
3 #include <iostream.h>
4 #include <conio.h>
5
6 int main ()
7{
8 int i;
Veuillez entrer une valeur entière :
10 cin >> i;
11 cout << "La valeur que vous avez entrée est " << i;
12 cout << " et son double est : " << i*2 << ".\n
13 getch();
14 }

Output:

Veuillez entrer une valeur entière : 12


et son double est : 144

L'utilisateur d'un programme peut être l'un des facteurs générant des erreurs
même dans les programmes les plus simples qui utilisent cin (comme celui que nous venons de voir).
Puisque si vous demandez une valeur entière et que l'utilisateur introduit un nom (ce qui
généralement est une chaîne de caractères), le résultat peut amener votre programme à
mal fonctionner puisque ce n'est pas ce que nous attendions de l'utilisateur. Donc, quand
vous utilisez les données fournies par les extractions cin, vous devrez faire confiance
que l'utilisateur de votre programme sera coopératif et qu'il/elle ne le fera pas
introduisez son nom ou quelque chose de similaire lorsqu'une valeur entière est
demandé. Un peu plus loin, lorsque nous verrons la classe stringstream, nous verrons un
solution possible pour les erreurs qui peuvent être causées par ce type d'utilisateur
entrée.

Vous pouvez également utiliser cin pour demander plusieurs saisies de données à l'utilisateur :

est équivalent à : 1 cin >> a;


cin >> a >> b;
2 cin >> b;

Dans les deux cas, l'utilisateur doit fournir deux données, une pour variablea et

un autre pour variablebqui peut être séparé par tout espace valide
séparateur : un espace, un caractère de tabulation ou une nouvelle ligne.
INTRODUCTION À L'INFORMATIQUE Programmation C++

OPÉRATEURS
Une fois que nous connaissons l'existence de variables et de constantes, nous pouvons

commencer à fonctionner avec eux. À cette fin, C++ intègre des opérateurs.
Contrairement à d'autres langues dont les opérateurs sont principalement des mots-clés, les opérateurs en

Le C++ est principalement composé de signes qui ne font pas partie de l'alphabet mais qui sont

available in all keyboards. This makes C++ code shorter and more
international, car il repose moins sur des mots anglais, mais nécessite un peu de
effort d'apprentissage au début.

Vous n'avez pas à mémoriser tout le contenu de cette page. La plupart des détails
sont uniquement fournis pour servir de référence ultérieure au cas où vous en auriez besoin.

Opérateurs d'assignation (=)

Un opérateur est un symbole qui pousse le compilateur à effectuer une action.


Operators act on operands, and in C++ all operands are expressions. In
En C++, il existe plusieurs types d'opérateurs différents. Ce sont :

opérateurs mathématiques (+ , - , / , * )
opérateurs relationnels (déclaration vraie ou fausse)
opérateurs logiques ( et, ou, non )

Cette déclaration assigne la valeur entière 5 à la variable a. La partie


a = 5; À gauche de l'opérateur d'assignation (=) est connu sous le nom de lvalue (gauche
valeur) et la droite comme la rvalue (valeur de droite).

La valeur à gauche doit être une variable alors que la valeur à droite peut être soit une constante,
une variable, le résultat d'une opération ou toute combinaison de celles-ci.

La règle la plus importante lors de l'attribution est la règle de droite à gauche : Le


L'opération d'assignation s'effectue toujours de droite à gauche, et jamais
autre façon

Cette déclaration assigne à la variablea (la valeur de gauche) la valeur contenue dans
a = b; variableb(l valeur rvalue). La valeur qui a été stockée jusqu'à ce moment
nais n'est pas du tout pris en compte dans cette opération, et en fait cette valeur est
perdu.

Considérez également que nous n'assignons la valeur de b à a que pour le moment.


de l'opération d'affectation. Par conséquent, un changement ultérieur de b n'affectera pas
la nouvelle valeur de a.
INTRODUCTION À L'INFORMATIQUE Programmation C++

Opérateurs arithmétiques (+, -, *, /, %)

Les cinq opérations arithmétiques prises en charge par le langage C++ sont :

+ addition Opérations d'addition, de soustraction, de multiplication et


la division correspond littéralement à leurs respectifs
soustraction opérateurs mathématiques. Le seul que vous pourriez
ne pas être si habitué à voir ismodulo ; dont l'opérateur est le
multiplication
symbole de pourcentage (%). Le modulo est l'opération qui donne
/ division le reste d'une division de deux valeurs.

%modulo

Division entière et modulus


La division entière est quelque peu différente de la division quotidienne. Quand vous
divisez 21 par 4, le résultat est un nombre réel (un nombre avec une partie fractionnaire)
les entiers n'ont pas de fractions, et donc le "reste" est éliminé.
la réponse est donc 5. Pour obtenir le reste, vous prenez 21 modulo (21 % 4)
et le résultat est 1. L'opérateur modulo vous indique le reste après un
division entière.

Écrivez la sortie du code source donné ci-dessous.

// ESSAYEZ CECI : Écrivez votre réponse ici :

#include<iostream.h>
#include<conio.h>
principal()
{
int a, b;
a = 53;
b = 5;
clrscr();
cout << "LE QUOTIENT EST : " << a / b;
cout << "LE RESTE EST : " << a % b
getch();
}
INTRODUCTION À L'INFORMATIQUE Programmation C++

Compound Assignments
(+=,-=, *=, /=, %=, <<=, >>=, &=, ^=, |= )

Lorsque nous voulons modifier la valeur d'une variable en effectuant une


opération sur la valeur actuellement stockée dans cette variable nous pouvons utiliser
opérateurs d'affectation composés :

expression est équivalent à


valeur += augmentation; valeur = valeur + augmentation;
a -= 5 ; a = a - 5;
a /= b; a = a / b;
prix *= unités + 1; prix = prix * (unités + 1);

Incrémenter (++) et Décrémenter (--)

En abrégé, l'opérateur d'incrémentation (++)


et l'opérateur de diminution (--) augmente ou réduit de un la valeur stockée
dans une variable. Ils sont équivalents à +=1 et à -=1, respectivement. Ainsi :

1 c++; sont tous équivalents dans leur fonctionnalité : les trois d'entre eux augmentent de
2 c+=1; la valeur de c.
3 c=c+1;

Préfixe et Suffixe

L'opérateur d'incrémentation (++) et l'opérateur de décrémentation (--) sont disponibles


deux variétés :

Préfixe - écrit avant le nom de la variable (++monâge), Incrémenter le


valeur et récupérez-la.
Postfix – écrit après le nom de la variable (myage++), récupérez la valeur et
puis incrémentez l'original

Une caractéristique de cet opérateur est qu'il peut être utilisé à la fois comme préfixe
et comme un suffixe. Cela signifie qu'il peut être écrit soit avant la variable
identifiant (++a) ou après lui (a++). Bien que dans des expressions simples
commea++ou++àlafois ont exactement le même sens, dans d'autres expressions dans
dont le résultat de l'opération d'augmentation ou de diminution est évalué comme un
valeur dans une expression extérieure, ils peuvent avoir une différence importante dans leur
meaning: In the case that the increase operator is used as a prefix (++a)
la valeur est augmentée avant que le résultat de l'expression ne soit évalué et
par conséquent, la valeur accrue est prise en compte dans l'expression extérieure ; dans le cas où
qu'il est utilisé comme un suffixe (a++) la valeur stockée dans a est augmentée après avoir été
évalué et donc la valeur stockée avant l'opération d'augmentation est
évalué dans l'expression extérieure. Remarquez la différence :
INTRODUCTION À L'INFORMATIQUE Programmation C++

Exemple 1 Exemple 2
B=3; B=3;
A=++B; A=B++;
// A contient 4, B contient 4// A contient 3, B contient 4

Dans l'exemple 1, Bis a augmenté avant que sa valeur ne soit copiée dans A. Alors que dans

Exemple 2, la valeur de B est copiée dans A puis B est augmentée.

Quelle est la sortie du code source donné ci-dessous.

#include<iostream.h>
#include<conio.h>
main()
{
int monâge = 40;
int votreâge = 40;
MON ÂGE EST :
VOTRE ÂGE EST :
******POSTFIX ET PREFIX*********
monâge++;
++votreâge;
UN AN PASSE…….
MON ÂGE EST :
VOTRE ÂGE :
++++++++UNE AUTRE ANNÉE PASSÉE+++++;
cout<<" MON ÂGE EST : "<<myage++;
cout<<" VOTRE ÂGE EST : "<<++votreage;
++++++++++IMPRIMONS
ENCORE++++++++++++
MON ÂGE EST :
cout << '\nVOTRE ÂGE EST : " << votreage;
getch();
}

Write your output here:


INTRODUCTION À L'INFORMATIQUE Programmation C++

Priorité des opérateurs

Lors de l'écriture d'expressions complexes avec plusieurs opérandes, nous pouvons


J'ai des doutes sur quel opérande est évalué en premier et lequel ensuite.
Par exemple, dans cette expression :

a = 5 + 7 % 2

Nous pouvons douter de ce que cela signifie réellement :

1 a = 5 + (7 % 2) // avec un résultat de 6, ou
2 a = (5 + 7) % 2 // avec un résultat de 0

La bonne réponse est la première des deux expressions, avec un résultat


Il existe un ordre établi avec la priorité de chaque opérateur, et
pas seulement les arithmétiques (ceux dont la préférence provient de
mathématiques) mais pour tous les opérateurs qui peuvent apparaître dans C++. À partir de
de la plus grande à la plus faible priorité

LA NATURE DE LA VÉRITÉ
En C++, zéro est considéré comme faux, et toutes les autres valeurs sont considérées comme vraies.

vrai, bien que vrai soit généralement représenté par 1. Ainsi, si une expression est
faux, c'est égal à zéro. Et si une expression est égale à zéro, elle est fausse. Si un
la déclaration est vraie, tout ce que vous savez, c'est qu'elle est non nulle, et toute déclaration nulle est

vrai.

Opérateurs relationnels et d'égalité

Afin d'évaluer une comparaison entre deux expressions, nous pouvons


utilisez les opérateurs relationnels et d'égalité. Le résultat d'une opération relationnelle
est une valeur booléenne qui ne peut être vraie ou fausse, selon son booléen
résultat.

Nous pouvons vouloir comparer deux expressions, par exemple, pour savoir si
ils sont égaux ou si l'un est plus grand que l'autre. Voici une liste des
opérateurs relationnels et d'égalité qui peuvent être utilisés en C++ :

Voici quelques exemples :


==Égal à
!= Pas égal à
1 (7 == 5) // évalue à faux.
Supérieur à 2 (5 > 4) // évalue à vrai.
Moins que 3 (3 != 2) // évalue à vrai.
>=Plus grand ou égal à 4 (6 >= 6) // évalue à vrai.
Inférieur ou égal à 5 (5 < 5) // évalue à faux.
INTRODUCTION À L'INFORMATIQUE Programmation C++

Bien sûr, au lieu d'utiliser uniquement des constantes numériques, nous pouvons utiliser n'importe quel

expression valide, y compris les variables.

Supposons que a=2, b=3 et c=6,

1 (a == 5) // évalue à faux puisque a n'est pas égal à 5.


2 (a*b >= c) // évalue à vrai puisque (2*3 >= 6) est vrai.
3 (b+4 > a*c) // évalue à faux puisque (3+4 > 2*6) est faux.
4 ((b=2) == a) // évalue à vrai.

Faites attention ! L'opérateur = (un signe égal) n'est pas le même que le
operator==(deux signes égaux), le premier est un opérateur d'assignation
(attribue la valeur à sa droite à la variable à sa gauche) et l'autre
(==) est l'opérateur d'égalité qui compare si les deux expressions dans le
les deux côtés sont égaux entre eux. Ainsi, dans la dernière expression ((b=2)
== a), nous avons d'abord attribué la valeur2toband puis nous l'avons comparée à a, que
stocke également la valeur2, donc le résultat de l'opération est vrai.

Opérateurs Logiques

L'opérateur ! est l'opérateur C++ pour effectuer l'opération booléenne.


NON, il n'a qu'un seul opérande, situé à sa droite, et la seule chose qu'il
fait inverser la valeur de celui-ci, produisant faux si son opérande est vrai et
vrai si son opérande est faux. Fondamentalement, il renvoie la valeur booléenne opposée de
évaluant son opérande. Par exemple :

1 !(5 == 5)// faux car l'expression à sa droite est vraie


2 !(6 <= // evaluates to true because (6 <= 4) would be false.
3 !vrai // évalue à faux
4 !faux // évalue à vrai.

Les opérateurs logiques && et || sont utilisés lors de l'évaluation de deux


expressions pour obtenir un seul résultat relationnel.

&& OPÉRATEUR

a b a && b L'opérateur && correspond à Boolean


vrai vrai vrai opération logique ET. Cette opération donne
true false faux vrai si les deux opérands sont vrais, et faux
false true faux sinon.
faux faux faux

|| OPÉRATEUR
L'opérateur || correspond à la logique booléenne
un b a || b
opération OU. Cette opération donne vrai si l'un ou l'autre
vrai vrai vrai
l'un de ses deux opérandes est vrai, étant ainsi faux
true false vrai seulement lorsque les deux opérandes sont eux-mêmes faux
false true vrai
faux faux faux
INTRODUCTION À L'INFORMATIQUE Programmation C++

A. Supposons que a = 2, b = 3 et c = 4 évaluez l'expression donnée


ci-dessous. Écrivez le mot VRAI si l'expression évalue à vrai sinon
écrire FAUX

EXPRESSION ÉVALUATION

1 ( a > b ) || ( c != c )
2 ( c != 4 ) && (b < a )
3 ( a == 2 ) || ( ! ( c > c)
4 ( b != b ) && ( c>c)
5 ( c <6) || (a==a)
6 ( b >=b) || (c !=b)
7 ( 6 >= 6 ) && ( a == 1 )
8 ( 9 == b ) || ( ! (c = 9 )
9 ( c <= 5 ) && ( c!=b )
10 ! (a==b) || ( b >=5)

B. Analyser et compléter le tableau en écrivant les relations manquantes


opérateurs ci-dessous.

Supposons que a = 3, b = 4, c = 5 et d = 6

EXPRESSION 1 OPÉRATEUR EXPRESSION 2 ÉVALUATION


(a==3) (a!=b) Vrai
(c!=d) (c!=5) Faux
(a>1) (b==b) Vrai
(!(b=c) (!(d=6) Faux
(c==c) (b>a) Vrai
(b>a) (d>12) Faux
(d<10) (!(c=d) Vrai
(c>=5) (b>=d) Faux
(a!=b) !(c>d) Vrai
INTRODUCTION À L'INFORMATIQUE Programmation C++

LESSON 5
Structures de contrôle de programme C++

Objectifs :

À la fin de cette leçon, l'étudiant devrait être capable de :

Comprenez ce qu'est une structure de contrôle.


Différencier les types de structures de contrôle
Know how to use and construct Control Structures

Structure de contrôle

Un programme n'est généralement pas limité à une séquence linéaire d'instructions.


Au cours de son processus, il peut se bifurquer, répéter du code ou prendre des décisions. Pour cela
Le but, le C++ fournit des structures de contrôle qui servent à spécifier ce qui doit être
être fait par notre programme, quand et dans quelles circonstances.

Avec l'introduction des structures de contrôle, nous allons devoir


introduire un nouveau concept : l'instruction-composée ou bloc. Un bloc est un
groupe d'instructions qui sont séparées par des points-virgules (;) comme en C++
déclarations, mais regroupées dans un bloc encadré par des accolades : { }.

{statement1; statement2; statement3;}

La plupart des structures de contrôle que nous verrons dans cette section nécessitent un
déclaration générique comme partie de sa syntaxe. Une déclaration peut être soit simple
instruction (une instruction simple se terminant par un point-virgule) ou un composé
instruction (plusieurs instructions regroupées dans un bloc), comme celle juste
décrit. Dans le cas où nous voulons que la déclaration soit simple
déclaration, nous n'avons pas besoin de l'encadrer de crochets ({}). Mais dans le cas où
nous voulons que l'énoncé soit une déclaration composée, il doit être enfermé
entre accolades ({}), formant un bloc.

Types de structures de contrôle


1. Structure de la séquence

2. Sélection / Structure conditionnelle


3. Structure de répétition/itération

STRUCTURE DE LA SÉQUENCE

The instructions are executed sequentially starting from the first


instruction jusqu'à la dernière instruction du programme.
INTRODUCTION À L'INFORMATIQUE Programmation C++

STRUCTURE CONDITIONNELLE / DE SÉLECTION

Il exécute différentes computations ou actions en fonction de si un


La condition booléenne spécifiée par le programmeur évalue à vrai ou faux.

a. Déclaration If

Le mot-clé "thief" est utilisé pour exécuter une instruction ou un bloc uniquement si une condition

est accompli. Sa forme est :

Syntaxe :
si (condition) déclaration

Wherecondition est l'expression qui est en cours d'évaluation. Si cette condition


est vrai, l'instruction est exécutée. Si c'est faux, l'instruction est ignorée (pas
exécuté) et le programme se poursuit juste après cette structure conditionnelle.

1 si (x == 100) Le fragment de code suivant imprime x est


2 cout << "x est 100 seulement si la valeur stockée dans la variable x est
100";
en effet100:

1 si (x == 100) Si nous voulons plus qu'une seule déclaration à être


2 exécuté dans le cas où la condition est vraie nous
3 cout << "x est ";
peut spécifier un bloc en utilisant des accolades { } :
4 cout << x;
5}

# inclure <iostream.h> Write the output 1 here


#include<conio.h>
principal ()
{

int note;
effacer();
cout << " Entrez une note : "
cin >> note;
Write the output 2 here
Si (note >=75)
cout << " PASSÉ";
Si (note <75)
cout << "ÉCHOUÉ";

getch ();
INTRODUCTION À L'INFORMATIQUE Programmation C++

`
b. Instruction If Else

Il exécute deux instructions dans un programme. Si la condition est remplie, le


la première déclaration sera exécutée sinon, elle passera à une autre déclaration.

Nous pouvons également spécifier ce que nous voulons qu'il se passe si la condition n'est pas remplie.

réalisé en utilisant le mot clé else. Sa forme utilisée en conjonction avec if est :

Syntaxe : si (condition)
statement 1;
sinon
déclaration 2;

Par exemple :

1 si (x == 100) Imprime à l'écran x est 100si


2 cout << "x est 100";indeedx a une valeur de 100, mais si cela
3 sinon n'a pas -et seulement si ce n'est pas le cas- il imprime outx

4 cout << "x n'est pas n'est pas 100.


100";

# inclure <iostream.h> Write the output 1 here (input positive # )


#include<conio.h>
principal()
{

int num;
clrscr();

cout << " Entrez un nombre : " Écrivez la sortie 2 ici (entrée Négative #)
cin >> note;

Si (num > 0)
cout << "Nombre positif";
sinon si (grade < 0)
cout << "Nombre négatif"; Écrivez la sortie 3 ici (entrée zéro)
sinon
cout << "C'est 0";

getch ();
}
INTRODUCTION À L'INFORMATIQUE Programmation C++

c. Sinon si déclaration

Habituellement, il est utilisé pour exécuter si vous avez trois déclarations ou plus à être

exécuté dans le programme.

La structure if+else peut être concaténée avec l'intention de vérifier


une gamme de valeurs. L'exemple suivant montre son utilisation en indiquant si la valeur
actuellement stocké dans x est positif, négatif ou aucun d'eux (c'est-à-dire zéro) :

1 si (x > 0)
2 cout << "x est positif";
3 sinon si (x < 0)
4 cout << "x est négatif";
5 sinon
6 cout << "x est 0";

note
N'oubliez pas que si nous voulons plus qu'une seule déclaration à
être exécutés, nous devons les regrouper dans un bloc en les enfermant dans
crochets{ }.

#include<iostream.h> Write all the possible output


#include<conio.h>

int note;
clrscr();
cout << " Entrez une note :! ";
cin >>> note;
sinon si
(note>=97&&note<=100)
cout << "1.00";
sinon si (note >= 94
&&note<=96)
cout <<“ 1,25”;
sinon si (note >= 91 &&
note <=93)
cout << "1.50";
sinon si ( grade==75)
cout << "3.00";
sinon si ( note<75)
cout << "5.00";
sinon
cout <<“Invalide
entrée
getch();
}
INTRODUCTION À L'INFORMATIQUE Programmation C++

PROBLEM 1 : SAMPLE OUTPUT


Entrez votre année de naissance : 1990
Créez un programme qui calculera
votre âge et affichera si vous êtes un Entrez l'année actuelle : 2012
mineur ou personne majeure. Référez-vous à votre source

code sur la sortie donnée. Écrivez votre Votre âge est : 22 ans
programme dans la boîte ci-dessous
Vous êtes en âge légal

____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________

________________________________________________
PROBLÈME 2 : ________________________________________________

Créez un programme qui va ________________________________________________


entrez un nombre et cela ________________________________________________
afficher le nombre est impair ________________________________________________
ou un nombre pair
________________________________________________
_______________________________________________
SORTIE D'ÉCHANTILLON ________________________________________________
________________________________________________
Entrez un numéro : 5
________________________________________________
C'est un nombre impair
________________________________________________
________________________________________________
INTRODUCTION À L'INFORMATIQUE Programmation C++

d. Instruction Switch Case

Son objectif est de vérifier plusieurs valeurs constantes possibles pour un


expression. Sa forme est le
Cela fonctionne de la manière suivante :
e.
Switch (expression) 1. Le commutateur évalue l'expression et
{ vérifie si c'est équivalent à constante1,
Cas constant 1 : s'il l'est, il exécute un groupe de
Groupe d'affirmations instructions1jusqu'à ce qu'il trouve lebreak
1; déclaration. Lorsqu'il trouve cette pause
Pause; déclaration vers laquelle le programme saute
fin de la structure sélective switch.
Cas constant 2 :
2. Si l'expression n'est pas égale à la constante
Groupe de déclaration 2;
1 cela sera vérifié par rapport à constant2 si
Pause
c'est égal à cela, il exécutera le groupe
-
de déclarations2 jusqu'à la clé de rupture est
-
- trouvé, puis sautera à la fin de
Par défaut : la structure sélective switch.
3. Enfin, si la valeur de l'expression faisait
Groupe par défaut de ne correspond à aucun des précédents
déclarations les constantes spécifiées, le programme va
} exécuter les déclarations incluses
après le défaut.

Les deux fragments de code suivants ont le même comportement

EXEMPLE DE SWITCH CASE Équivalent if-else

switch(x) {
cas Si (x == 1)
cout << "x est 1"; {
pause; Cout << "x est 1";
}
cas Sinon si (x == 2)
cout << "x est 2"; {
pause Cout << "x est 2";
}
default: Autre
cout << "valeur de x {
est inconnu Cout<<"valeur de x
} est inconnu";
}

L'instruction switch case est un peu particulière dans le langage C++.


parce qu'il utilise des étiquettes au lieu de blocs. Cela nous oblige à mettre des ruptures
déclarations après le groupe de déclarations que nous voulons exécuter
pour une condition spécifique. Sinon, les déclarations restantes–
y compris ceux correspondant à d'autres étiquettes - seront également exécutés
jusqu'à la fin du bloc sélectif switch ou une instruction break est
INTRODUCTION À L'INFORMATIQUE Programmation C++

Créez un code source de la sortie suivante. Écrivez votre programme sur la boîte
ci-dessous.

ÉCHANTILLON DE SORTIE

[A]–AJOUT [A]–AJOUT [A]–AJOUT


[S]–SOUS-TRACTION [S]–SOUSTRACTION [S]–SOUSTRACTION
[M] –MULTIPLICATION [M] –MULTIPLICATION [M] –MULTIPLICATION
[D]–DIVISION D–DIVISION [D]–DIVISION
ENTRER OPÉRATION : A ENTRER OPÉRATION : M ENTRER OPÉRATION : W
ENTRER NUM 1 : 12 ENTRER NUM 1 : 5 ENTRÉE INVALIDE
ENTRER NUM 2 : 13 ENTRER NUM 2 : 10
LA SOMME EST : 25 LE PRODUIT EST : 50

CODE SOURCE :

____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
____________________________________________________________________________
INTRODUCTION À L'INFORMATIQUE Programmation C++

LEÇON 6
STRUCTURE D'ITÉRATION / DE RÉPÉTITION

Objectives:

À la fin de cette leçon, l'élève devrait être capable de :

Apprenez les différents types de structures de répétitions


Différenciez la répétition de la structure de sélection
Appliquez la syntaxe de différentes structures de répétition dans la création d'un
programme complexe.

Qu'est-ce que l'itération ?

Cela signifie faire la même chose encore et encore. La méthode principale de


l'itération est la boucle. Les boucles ont pour but de répéter une déclaration un certain
nombre de fois ou tant qu'une condition est remplie.

INSTRUCTION GOTO

goto permet de faire un saut absolu vers un autre point dans le


programme. Vous devriez utiliser cette fonctionnalité avec prudence car son exécution entraîne
un saut inconditionnel ignorant tout type de limitations de nesting.
Le point de destination est identifié par une étiquette, qui est ensuite utilisée comme un
argument en faveur de l'instruction goto. Une étiquette est composée d'un identifiant valide.
suivi d'un deux-points (:)

De manière générale, cette instruction n'a pas d'utilisation concrète dans une structure.
ou programmation orientée objet à part ceux qui sont de bas niveau
les fans de programmation peuvent le trouver. Par exemple, voici notre boucle de compte à rebours
utilisergoto :

1 // exemple de boucle goto 10


2 9,
3 #include <iostream.h> 8
4 #include <conio.h> 7,
5 6
6 int main () 5
7 4
8 int n=10; 3
9 boucle : 2
10 cout << n << ",\n "; 1,
11 n--; AU FEU !
12 si (n>0) aller à boucle;
13 cout << "FEU!\n";
14 getch();
15 }
INTRODUCTION À L'INFORMATIQUE Programmation C++

La fonction de sortie

exitis une fonction définie dans la bibliothèque cstdlib.

Le but de exit est de terminer le programme actuel avec une sortie spécifique
code. Son prototype est :

void sortir (int codeSortie);

Le code de sortie est utilisé par certains systèmes d'exploitation et peut être utilisé par

appelle des programmes. Par convention, un code de sortie de 0 signifie que le programme
a terminé normalement et toute autre valeur signifie qu'il y a une erreur ou un événement inattendu
les résultats se sont produits.

LA STRUCTURE DE CONTRÔLE DE RÉPÉTITION

également connu sous le nom de structure de contrôle de boucle ou d'itération. La boucle est
le processus d'exécution répétée d'une ou plusieurs étapes d'un algorithme ou
programme ; il est essentiel en programmation, car la plupart des programmes effectuent
tâches répétitives.

Chaque boucle se compose des trois parties suivantes :

1. La décision de terminaison de la boucle - détermine quand (dans quelles conditions)

la boucle sera terminée (arrêtée). Il est essentiel que


des dispositions dans le programme doivent être prises pour que la boucle s'arrête ;

sinon, l'ordinateur continuerait à exécuter la boucle


indéfiniment - une boucle qui ne s'arrête pas s'appelle une boucle sans fin
boucle ou boucle infinie ; lorsque un programme reste bloqué dans une boucle sans fin,
les programmeurs disent que le programme est "en boucle".

2. Le corps de la boucle - l'étape ou les étapes de l'algorithme qui sont


répété dans la boucle. Cela peut n'être qu'une seule action, ou cela peut
inclure presque toutes les instructions du programme. Note importante : certains
l'action doit se produire dans le corps de la boucle qui affectera la boucle
décision de résiliation à un certain moment.

3. Transférer au début de la boucle - retourne le contrôle au


le sommet de la boucle afin qu'une nouvelle répétition (itération) puisse commencer.

Trois types de structure de répétition

1. Boucle While
2. Boucle Do
3. Boucle For
INTRODUCTION À L'INFORMATIQUE Programmation C++

1. LA BOUCLE WHILE

Sa syntaxe est :

tant que (expression) déclaration

et sa fonctionnalité est simplement de répéter l'énoncé tant que la condition définie dans
l'expression est vraie.

Par exemple
nous allons créer un programme pour faire un compte à rebours en utilisant une boucle while :

1 // compte à rebours personnalisé utilisant while Entrez un nombre > 8


2 8
3 #include <iostream> 7
4 inclure <conio> 6
5 int main () 5
6 4
7 int n; 3
Entrez un nombre >2
9 cin >> n; 1
10 AU FEU !
11 tant que (n>0) {
12 cout << n << "/n";
13 --n;
14 }
15
16 cout << "FIRE!\n";
17 getch();
18 }
19

Lorsque le programme démarre, l'utilisateur est invité à saisir un nombre de départ.


pour le compte à rebours. Ensuite, la boucle while commence, si la valeur saisie par le
l'utilisateur remplit la condition n>0 (c'est-à-dire supérieur à zéro) le bloc que
suit la condition sera exécuté et répété tant que la condition
(n>0) reste vrai.

Condition est n'importe quelle expression booléenne C++ et une déclaration est n'importe quel C++ valide

déclaration ou un bloc de déclarations. Lorsque la condition évalue à VRAI (1)


l'instruction est exécutée. Et puis la condition est testée à nouveau, cela continue jusqu'à
les tests de condition sont FAUX (0) à quel moment la boucle while se termine et l'exécution
continue sur la première ligne ci-dessous la déclaration.
INTRODUCTION À L'INFORMATIQUE Programmation C++

L'ensemble du processus du programme précédent peut être interprété selon


le script suivant (commençant dans main) :
L'utilisateur attribue une valeur à ton

1. La condition de la boucle while est vérifiée (n>0). À ce stade, il y a deux


possibilities:
* la condition est vraie : l'instruction est exécutée (vers l'étape 3)
* la condition est fausse : ignorer l'instruction et continuer après celle-ci (jusqu'à l'étape 5)
2. Exécuter l'instruction :
cout << n << ", ";
--n;
(imprime la valeur de non à l'écran et diminue n de 1)
3. Fin du bloc. Retour automatique à l'étape 2
4. Continuez le programme juste après le bloc : imprimez FEU ! et terminez
programme.

Lors de la création d'une boucle while, nous devons toujours considérer qu'elle doit se terminer.

à un certain moment, nous devons donc fournir à l'intérieur du bloc une méthode pour
forcer la condition à devenir fausse à un certain moment, sinon la boucle va
continuer à boucler indéfiniment. Dans ce cas, nous avons inclus --n ; qui diminue
la valeur de la variable qui est évaluée dans la condition (n) par un

Cela finira par rendre la condition (n>0) fausse après un


un certain nombre d'itérations de boucle : pour être plus précis, lorsque devient 0,
c'est là que notre boucle while et notre compte à rebours se terminent.

1 // compte à rebours personnalisé utilisant while Quel est le résultat ?


2
3 #include <iostream>
4 inclure <conio>
5 int principal ()
6
7
8 int n;
9 cout << "Entrez un nombre :> ";
10 cin >> n;
11
12 pendant que (n>0) {
13 cout << "COLLÈGES ICCT";
14 --n;
15 }
16
17 cout << "FEU! ";
18 gecth();
19 }
INTRODUCTION À L'INFORMATIQUE Programmation C++

L'instruction break
En utilisant break, nous pouvons quitter une boucle même si la condition de sa fin n'est pas remplie.

non rempli. Cela peut être utilisé pour mettre fin à une boucle infinie, ou pour forcer son terme.
avant sa fin naturelle. Par exemple, nous allons arrêter le compte à rebours
avant sa fin naturelle (peut-être à cause d'un échec de vérification du moteur ?) :

1 // exemple de rupture de boucle Quelle est la sortie ?


2
3 #include <iostream>
4 #include <conio>
5
6 int main ()
7 {
8 int n;
9 for (n=10; n>0; n--)
10
11 cout << n << "\n";
12 si (n==3)
13
14 cout << "compte à rebours annulé!";
15 pause;
16 }
17 }
18 Getch;
19 }

L'instruction continue
L'instruction continue fait en sorte que le programme ignore le reste de la
boucle dans l'itération en cours comme si la fin du bloc d'instructions avait été
atteint, le faisant sauter au début de l'itération suivante. Pour
par exemple, nous allons sauter le numéro 5 dans notre compte à rebours :

1 // exemple de boucle continue Quel est le résultat ?


2 #include <iostream>
3 utilisant l'espace de noms std;
4
5 int principal ()
6
7 pour (int n=10; n>0; n--) {
8 si (n==5) continuer;
9 cout << n << ", ";
10 }
11 cout << "FEU!\n";
12 retour 0;
INTRODUCTION À L'INFORMATIQUE Programmation C++

2. LA BOUCLE DO-WHILE

Sa syntaxe est :
faire une déclaration tant que (condition);

Sa fonctionnalité est exactement la même que celle de la boucle while, sauf


cette condition dans la boucle do-while est évaluée après l'exécution de
déclaration au lieu de avant, accordant au moins une exécution
de toute façon, même si la condition n'est jamais remplie. Par exemple, le
le programme d'exemple suivant répète tout nombre que vous entrez jusqu'à ce que vous entriez 0.

1 // écho de nombre Quelle est la sortie ?


2
3 #include <iostream>
4 inclure <conio>
5
6 int main ()
7 {
8 long non signé n;
9 faire {
10 cout << "Entrez un nombre : ";
11 cin >> n;
12 cout << "Vous avez entré : "<n<<\n";
13 } tant que (n != 0);
14 Getch;
15 }

Remarque : La boucle do-while est généralement utilisée lorsque la condition qui doit
la fin de la boucle est déterminée à l'intérieur de l'instruction de boucle elle-même, comme
dans le cas précédent, où l'entrée de l'utilisateur dans le bloc est ce qui est utilisé pour
déterminez si la boucle doit se terminer. En fait, si vous n'entrez jamais la valeur 0 dans le
Dans l'exemple précédent, vous pouvez être invité à donner plus de nombres indéfiniment.

3. LA BOUCLE FOR

Sa syntaxe est :

pour (initialisation; condition; augmentation) instruction;

et sa fonction principale est de répéter l'instruction tant que la condition reste vraie,
comme la boucle while. Mais en plus, la boucle for fournit des emplacements spécifiques pour
contient une instruction d'initialisation et une instruction d'augmentation. Donc ceci
La boucle est spécialement conçue pour effectuer une action répétitive avec un compteur.
INTRODUCTION À L'INFORMATIQUE Programmation C++

Cela fonctionne de la manière suivante :

1. L'initialisation est exécutée. En général, il s'agit d'un paramétrage de valeur initiale pour

a counter variable. This is executed only once.


2. La condition est vérifiée. Si elle est vraie, la boucle continue, sinon
la boucle se termine et l'instruction est ignorée (non exécutée).
3. L'instruction est exécutée. Comme d'habitude, il peut s'agir soit d'une seule instruction
ou un bloc enfermé dans des accolades { }.
4. enfin, tout ce qui est spécifié dans le champ d'augmentation est exécuté et le
la boucle revient à l'étape 2.

Voici un exemple de compte à rebours utilisant une boucle for :

1 // countdown using a for loop 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,


2 #inclure <iostream> AU FEU !
3 en utilisant l'espace de noms std;
4 int main ()
5
6 pour (int n=10; n>0; n--) {
7 cout << n << ", ";
8 }
9 cout << "FEU!\n";
10 retourne 0;
11 }

Les champs d'initialisation et d'augmentation sont optionnels. Ils peuvent rester


vide, mais dans tous les cas, les points-virgules entre eux doivent être écrits.
Par exemple, nous pourrions écrire : pour (;n<10;) si nous voulions préciser non
initialisation et aucune augmentation ; ou pour (;n<10;n++) si nous voulions inclure
un champ d'augmentation mais pas d'initialisation (peut-être parce que la variable était
déjà initialisé auparavant).

En option, en utilisant l'opérateur virgule (,), nous pouvons spécifier plus d'un
expression dans l'un des champs inclus dans une boucle for, comme
initialisation, par exemple. L'opérateur virgule (,) est une expression
séparateur, il sert à séparer plus d'une expression où seule une est
généralement attendu. Par exemple, supposons que nous voulions initialiser plus
qu'une variable dans notre boucle :

1 pour ( n=0, i=100 ; n!=i ; n++, i-- )


2{
3 // peu importe ici...
4}

Cette boucle s'exécutera 50 fois si ni l'un ni l'autre ne sont modifiés dans le


INTRODUCTION À L'INFORMATIQUE Programmation C++

commence avec une valeur de 0, et i avec 100, la condition est n != i (c'est-à-dire


pas égal à toi). Parce que nis a augmenté d'un et ide a diminué d'un, le
la condition de la boucle deviendra fausse après la 50ème boucle, lorsque
les deux nandi seront égals à 50.

Create the source code of the sample output below, the program should
accepter un nom et entrer combien de fois vous voulez afficher votre nom.
Use any type of looping in creating your program.

ENTREZ VOTRE NOM : CARLOS


ENTREZ COMBIEN DE FOIS VOUS SOUHAITEZ AFFICHER VOTRE NOM : 5
AFFICHER CARLOS 0 et 5 UNIQUEMENT
AFFICHER CARLOS 1 et 4 UNIQUEMENT
AFFICHER CARLOS 2 et 3 UNIQUEMENT
AFFICHER CARLOS 3 et 2 UNIQUEMENT
AFFICHER CARLOS 4 et 1 SEULEMENT
AFFICHER CARLOS 5 et 0 UNIQUEMENT

FIN DE VOTRE NOM !!!

Code source :

____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
____________________________________________________________________
INTRODUCTION À L'INFORMATIQUE Programmation C++

LEÇON 7

LE TABLEAU

Objectifs :

À la fin de cette leçon, l'élève devrait être capable de :

Apprenez ce qu'est un tableau et ce qu'il fait.


Apprenez à utiliser un tableau dans un programme

Qu'est-ce qu'un tableau ?

Un tableau est une série d'éléments du même type placés de manière contiguë
emplacements de mémoire pouvant être référencés individuellement en ajoutant un indice à
un identifiant unique.

Cela signifie que, par exemple, nous pouvons stocker 5 valeurs de type entier dans un

tableau sans avoir à déclarer 5 variables différentes, chacune avec un


different identifier. Instead of that, using an array we can store 5 different
valeurs du même type, int par exemple, avec un identifiant unique.

Par exemple, un tableau pour contenir 5 valeurs entières de Typeint appelé


CARLOScould être représenté comme ceci :

Où chaque panneau vide représente un élément du tableau, qui dans


ce cas sont des valeurs entières de type int. Ces éléments sont numérotés
de0à4depuis dans les tableaux, le premier index est toujours0, indépendamment de sa
longueur. Comme une variable régulière, un tableau doit être déclaré avant d'être utilisé.
Une déclaration typique pour un tableau en C++ est :

tapez nom [éléments];

wheretypeest un type valide (comme int, float...), nom est un identifiant valide et
theelementsfield (which is always enclosed in square brackets []),
précise combien de ces éléments le tableau doit contenir.

Par conséquent, afin de déclarer un tableau appelé CARLOS comme celui-ci


montré dans le diagramme ci-dessus, c'est aussi simple que :

int CARLOS [5];


INTRODUCTION À L'INFORMATIQUE Programmation C++

REMARQUE : Les éléments dans les crochets [] qui représentent le nombre de


les éléments que le tableau va contenir doivent être une valeur constante, puisque les tableaux sont
blocs de mémoire non dynamique dont la taille doit être déterminée à l'avance
exécution. Afin de créer des tableaux d'une longueur variable, la mémoire dynamique est
nécessaire, ce qui est expliqué plus tard dans ces tutoriels.

Initialisation des tableaux

Lors de la déclaration d'un tableau régulier de portée locale (dans une fonction, pour
exemple), si nous ne précisons pas le contraire, ses éléments ne seront pas initialisés
à une valeur par défaut, donc leur contenu sera indéterminé jusqu'à ce que nous stockions
certaines valeurs en eux. Les éléments des tableaux globaux et statiques, en revanche
main, sont automatiquement initialisées avec leurs valeurs par défaut, qui pour tous
types fondamentaux cela signifie qu'ils sont remplis de zéros.

Dans les deux cas, local et global, lorsque nous déclarons un tableau, nous avons
la possibilité d'assigner des valeurs initiales à chacun de ses éléments par
enfermant les valeurs entre accolades { }. Par exemple :

intCARLOS [5] = { 16, 2, 77, 40, 12071 };

Cette déclaration aurait créé un tableau comme ceci :

Le nombre de valeurs entre accolades {} ne doit pas être supérieur à


nombre d'éléments que nous déclarons pour le tableau entre crochets
crochets[ ]. Par exemple, dans l'exemple du tableau CARLOS, nous avons
déclaré qu'il a 5 éléments et dans la liste des valeurs initiales à l'intérieur
braces{}we have specified 5 values, one for each element.

Lorsque des valeurs d'initialisation sont fournies pour un tableau, C++ permet le
possibilité de laisser les crochets vides [ ]. Dans ce cas, le
le compilateur supposera une taille pour le tableau qui correspond au nombre de valeurs
inclus entre accolades { } :

int CARLOS [] = { 16, 2, 77, 40, 12071 };

Après cette déclaration, arrayCARLOS serait long de 5 int, puisque nous avons
valeurs d'initialisation fournies 5.
INTRODUCTION À L'INFORMATIQUE Programmation C++

Accéder aux valeurs d'un tableau

À tout moment dans un programme où un tableau est visible, nous pouvons y accéder.
la valeur de chacun de ses éléments individuellement comme s'il s'agissait d'une variable normale,
permettant ainsi de lire et de modifier sa valeur. Le format est aussi simple
comme :

name[index]

Suite aux exemples précédents dans lesquels CARLOS avait 5 éléments et


chacun de ces éléments était de type int, le nom que nous pouvons utiliser pour
faites référence à chaque élément suivant :

Par exemple, pour stocker la valeur 75 dans le troisième élément de CARLOS, nous pourrions
écrire la déclaration suivante :

CARLOS[2] = 75;

et, par exemple, passer la valeur du troisième élément de CARLOS à a


variable appelée a, nous pourrions écrire :

a = CARLOS[2];

Par conséquent, l'expression CARLOS[2] est à tous égards semblable à une variable de
typeint.

Remarquez que le troisième élément de CARLOS est spécifié CARLOS[2], puisque


le premier est CARLOS[0], le deuxième est CARLOS[1], et donc, le
le troisième est CARLOS[2]. Pour cette même raison, son dernier élément est CARLOS[4].
Donc, si nous écrivons CARLOS[5], nous accéderions au sixième élément
deCARLOSet donc dépassant la taille du tableau.

En C++, il est syntaxiquement correct de dépasser la plage valide des indices


pour un tableau. Cela peut créer des problèmes, car l'accès en dehors des limites
Les éléments ne provoquent pas d'erreurs de compilation mais peuvent provoquer des erreurs d'exécution. Le

la raison pour laquelle cela est permis sera vue plus loin lorsque nous commencerons à utiliser

indications.
INTRODUCTION À L'INFORMATIQUE Programmation C++

À ce stade, il est important de pouvoir clairement distinguer entre


les deux utilisations que les crochets [] ont par rapport aux tableaux. Ils effectuent deux
différentes tâches : l'une consiste à spécifier la taille des tableaux lorsqu'ils sont déclarés ;
et le deuxième consiste à spécifier des indices pour des éléments de tableau concrets. Ne pas
confondre ces deux utilisations possibles des crochets [] avec des tableaux.

1 int CARLOS[5]; // déclaration d'un nouveau tableau


2 CARLOS[2] = 75; // accès à un élément du tableau.

Si vous lisez attentivement, vous verrez qu'un spécificateur de type précède toujours une
variable or array declaration, while it never precedes an access.

D'autres opérations valides avec des tableaux :

1CARLOS[0] = a;
2CARLOS[a] = 75;
3b = CARLOS [a+2];
4CARLOS[CARLOS[a]] = CARLOS[2] + 5;

1 // exemple de tableaux QUEL EST LE RÉSULTAT ?


2 #include <iostream>
3 #include<conio>
4
5 int CARLOS [] = {16, 2, 77, 40,
6 12071};
int n, résultat=0;
8
9 int main ()
10
11 pour ( n=0 ; n<5 ; n++ )
12
13 result += CARLOS[n];
14 }
15 cout << résultat;
16 gecth();
}

Vous aimerez peut-être aussi