0% ont trouvé ce document utile (0 vote)
3 vues32 pages

Chapitre5 - Copie

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1/ 32

INITIATION A L’ALGORITHME

Licence Informatique

Chapitre 5 : Algorithme et programmation C++


Semestre 1

manev2011@gmail.com

Année académique: 2022-2023


INITIATION À L’ALGORITHME
Algorithme et programmation C++
Sommaire

Sommaire
I. Généralités sur le langage C++.
II. Les outils de programmation C++.
III. Les bases du langage C++
IV. La programmation C++

1
INITIATION À L’ALGORITHME
Algorithme et programmation C++
I. Généralités
1. introduction
La programmation ne s’arrête pas qu’à l’étape d’écriture d’algorithmes.
Tout programme pour être exécuté par la machine doit d’abord être
traduit en un langage compréhensible par l’ordinateur appelé langage de
programmation. Il existe une multitude de langages de programmation
comme le C, C++, java, python, javascript…
Chaque langage de programmation possède ses atouts et ses
inconvénients.
Ce cours présente les bases du langage C++ afin de permettre
l’application pratique des algorithmes étudiés dans les cours précédents.

2
INITIATION À L’ALGORITHME
Algorithme et programmation C++
I. Généralités
2. Présentation du langage C++
➢ Qu’est ce que le langage C++?
▪ Le langage C++ a été développé, en 1979, par Bjarne Stroustrup à Bell
labs.
▪ Considéré comme une extension du langage C, le langage C++ permet
de developper les applications performants et robustes.
➢Pourquoi le C++
▪ C++ est parmi les langages de programmation les plus utilisées dans
le monde aussi bien dans la programmation des applications
scientifiques et les applications de gestion.
▪ On le trouve également dans les systèmes d’exploitation, les
interfaces graphiques, et les systèmes embarqués.
▪Le C++ est un langage orienté objet qui donne une structure
3
INITIATION À L’ALGORITHME
Algorithme et programmation C++
I. Généralités
claire aux programmes puis permet d’obtenir la réutilisation du code et les
moindres couts de développement.
• Le C++ est portable les applications développées en C++ sont
multiplateformes.
• L’apprentissage du C++ est amusant et facile car il est proche du C# et java, et
tout programmeur de C++ peut facilement migrer vers le langage java ou C#
et vice versa.
• Les programmes sources en C++ sont enregistrés avec l’extension ,CPP
Exemple : l’inévitable « Hello Word"
.myfirstprogram.cpp
#include <iostream>
using namespace std;
int main() {
cout << "Hello World!";
return 0;
}
4
INITIATION À L’ALGORITHME
Algorithme et programmation C++
II. Les outils de programmation C++
➢De quoi a t-on besoin pour programmer en C++?

• un compilateur comme GCC pour la compilation du code source en langage machine;

• Un éditeur de texte simple comme Notepad++ ou un IDE (Environnement de

développement intégré) pour l’édition du code.

Pour la pratique, nous utiliserons un IDE appelé Code::Blocks à télécharger à l’adresse

suivante : http://www.codeblocks.org/downloads/26 et prendre la version mingw-setup.exe

pour Windows qui installe à la fois l’éditeur et le compilateur

5
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
1. La syntaxe de base
• #include <iostream> : est la bibliothèque qui permet de travailler avec les objets
d’entrée/sortie
• using namespace std : permet d’utiliser des noms des objets et les variables de la
bibliothèque standard.
• Les instructions à exécuter se trouvent toujours entre accolades("{}");
• Toute instruction C++ se termine par un point virgule (";");
• int main() représente la fonction principale ;
• return 0 marque la fin de la fonction principale;
2. Les instructions élémentaires
a. instruction d’entrée : L’instruction d’entrée se traduit par "cin" suivi de l’opérateur
">>"
exemple: cin >>nom;

6
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
b. L’instruction de sortie :L’instruction sortie se traduit par "cout" (prononcé
"see-out") suivi de l’opérateur "<<"

exemple: cout << "Hello world !";

3. Les commentaires : Les commentaires en langage C++ sont:

▪ // exprime un commentaire sur une ligne

▪ /* ceci exprime un commentaire sur plusieurs lignes */

7
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
4. Les variables : le langage C++ gère les variables de tout type. Le tableau
suivant résume les types des données :

Types Taille Description


int 4 bytes Tous les entiers sauf les nombres à virgules
float 4 bytes Ce sont les nombres décimaux. pouvant contenir
jusqu’à 7 chiffres décimaux
double 8 bytes Ce sont des nombres décimaux , pouvant contenir
jusqu’à 15 chiffres décimaux
boolean 1 byte Ce sont les booléens pouvant prendre que deux valeurs
(vrai ou faux)
char 1 byte Ce sont tout types de caractère
String Non définie Chaîne de caractères

8
(+=)

INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
a. Déclaration des variables.
Pour déclarer une variable en C++, on précise le type de la variable suivi de son
nom .
syntaxe : type nom ;
On peut déclarer plusieurs variables de même type sur la même ligne.
exemple : int x, y=8, z=9;
5. Les opérateurs
a. Affectation : consiste à assigner une valeur à une variable
Exemple: int x = 13;
b. affectation supplémentaire: consiste à affecter une valeur supplémentaire à
une variable
Exemple : int x = 10; x += 5; (équivaut à x = x+5).

9
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
Le tableau suivant résume les opérateurs d’affectation :
operateur Exemple Signification
= x=8 x =8
+= x+=2 x = x+2
-= x-=4 x = x-4
*= x*=3 x = x*3
/= x /= 3 x=x/3
%= x%=3 x=x%3
&= x&=3 x=x&3
^= x ^= 3 x=x^3
>>= x >>= 3 x = x >> 3
<<= x <<= 3 x = x << 3
Semestre 1 10 Année académique: 2019-2020
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
c. Les opérateurs arithmétiques: le tableau ci-dessous résume les opérateurs
arithmétique:
operateur Nom Description Exemple
+ addition Additionne deux valeurs x+y
- soustraction Soustrait une valeur d'une autre x-y
* multiplication Multiplie une valeur par une autre x*y
/ division Divise une valeur par une autre x/y
% modulo Renvoie le reste d’une division entière x%y
++ incrément Augmente la valeur d'une variable de 1 ++ x
-- décrément Décrémente la valeur d'une variable de 1 --x

d. Les opérateurs de comparaison : Ils servent à comparer deux variables.


Le tableau suivant résume les opérateurs de comparaison

11
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
operateur Nom Exemple
== Égal à x==y
!= Différent de x != y
> Supérieur à x>y
< Inférieur à x<y
>= Supérieur ou égal x >= y
<= Inférieur ou égal x <= y

d. Les opérateurs logiques:


Les opérateurs logiques sont utilisés pour déterminer la logique entre les
variables ou les valeurs:

Semestre 1 12 Année académique: 2019-2020


INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
Operateurs Noms Description Example
&& ET Retourne vrai si toutes les x > 0 && x < 9
conditions sont vérifiées
|| OU Retourne quand une des x < 0 || x > 4
conditions est vérifiées
! NON Retourne faux si le résultat est !(x >5 && x < 10)
vrai et retourne vrai si le resultat
est faux

5. Les opérations sur les chaînes de caractères (string) .


Les variables de type string contiennent des chaînes de caractères.
Pour travailler avec le type string il faut au préalable ajouter au fichier
d’entête la librairie <string> : #include <string>
13
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
a. La concaténation:
L’opérateur + permet de concaténer deux string
Exemple :
#include <string>
string nom = “EKOMBAND ";
string prenom = “Joëlle";
string nomComplet = fnom + prenom;
cout << nomComplet;
b. La longueur de String
Une chaîne en C ++ est en fait un objet. Cet objet possède des fonctions qui
permettant d’effectuer certaines opérations sur les chaînes. La fonction length()
renvoie la taille d’une chaîne de caractères.

14
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
c. Accès aux caractères d’une chaine
✓ on peut accéder aux caractères d’un string à travers sa position référencée par
l’index
exemple : string myString = "Bonjour";
cout << myString[0]; //renvoie B
✓ On peut aussi affecter et changer la valeur d’un caractère à une position donnée :
exemple : string myString = ”Bonjour";
myString[0] = ’L’;
cout << myString; // renvoie ”Lonjour”;
6. Les fonctions mathématiques
Il existe en C ++, de nombreuses fonctions qui permettent d'effectuer des tâches
mathématiques sur les nombres.
✓ La fonction max(x,y) renvoie la plus grande valeur entre x et y
✓ La fonction min(x,y) renvoie la plus petite valeur entre x et y
exemples : cout << max(2, 8); //renvoie 8
15
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
cout << min(3, 10); //renvoie 3
7. Autres fonctions
Le fichier d’entête <cmath> permet d’obtenir les autres fonctions telles:

Fonction Description
Sqrt(x) Renvoie la racine carrée de x
Round(x) Renvoie une vakeur arrondis de x
Log(x) Renvoie le logarithme de x
abs(x) Renvoie la valeur absolue de x
acos(x) Renvoie l'arc cosinus de x, en radians
asin(x) Renvoie l'arc sinus de x, en radians
atan(x) Renvoie l'arc tangente de x, en radians

16
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
cbrt(x) Renvoie la racine cubique de x
ceil(x) Renvoie la valeur de x arrondie à son entier superieur le plus proche
cos(x) Renvoie le cosinus de x, en radians
cosh(x) Renvoie le cosinus hyperbolique de x, en radians
x
exp(x) Renvoie la valeur de E
x
expm1(x) Renvoie e -1
fabs(x) Renvoie la valeur absolue d'un flottant x
fdim(x, y) Renvoie la différence positive entre x et y
floor(x) Renvoie la valeur de x arrondie à son entier inférieur le plus proche
2 2
hypot(x, y) Renvoie sqrt(x +y ) sans débordement ou sous-débordement intermédiaire
fma(x, y, z) Renvoie x * y + z sans perte de précision
17
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
fmax(x, y) Renvoie la valeur la plus élevée d'un x et y flottant
fmin(x, y) Renvoie la valeur la plus basse d'un x et y flottant
fmod(x, y) Renvoie le reste à virgule flottante de x / y
pow(x, y) Renvoie la valeur de x à la puissance de y
sin(x) Renvoie le sinus de x (x est en radians)
sinh(x) Renvoie le sinus hyperbolique d'une valeur double
tan(x) Renvoie la tangente d'un angle
tanh(x) Renvoie la tangente hyperbolique d'une valeur double

8. Les valeurs booleénnes


a. Une variable booléenne se déclare avec le mot clé bool .
exemple : bool reponse = true;
18
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
b. les expressions booléennes
ce sont des expression qui renvoient une valeur booléenne, 1 (true) ou 0 (false)
Exemples : int x = 10, y = 9 ;
cout << (x > y); // retourne 1 (true), parceque 10 est supérieur à 9
cout <<(x= =y); //retourne 0 (false).
9. Les structures de contrôle.
a. La condition if :
Syntaxe:
if (condition){
//bloc d’instructions à executer
}else{
//bloc d’instructions à exécuter
}

19
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
b. La condition switch
Syntaxe:
switch(expression) {
case x:
// bloc de code
break;
case y:
// bloc de code
break;
default:
// bloc de code
}

20
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++

Exemple : String jour = " ";


cout<<"entrez un numéro de jour" ;
cin>>jour
switch(jour) {
case 1:
cout<< “lundi“;
break;
case 2:
cout<< “mardi“;
break;
default:
cout<<“vous avez saisi un autre jour”;
}
21
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
c. La boucle while:
La boucle while parcourt un bloc de code tant qu'une condition spécifiée est vraie:
Syntaxe:
while (condition){
//bloc de code
}
Exemple :
int i = 0;
while (i < 12) {
cout << i << "\n";
i+ = 1;
}

22
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
c. La boucle do/while
Syntaxe:
do {
// bloc de code à exécuter
}
while (condition);
Exemple:
int i = 0;
do {
cout << i << "\n";
i++;
}
while (i < 12);
23
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
c. La boucle for
Syntaxe:
for (condition 1; condition 2; condition 3) {
// bloc de code à executer
}
Exemple:
for (int i = 0; i < 5; i++) {
cout << i << "\n";
}
d. L’instruction break est utilisée pour faire une sortie forcée d’une boucle.

13
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
Exemple:
for (int i = 0; i < 10; i++) {
if (i == 4) {
break;
}
cout << i << "\n";
}
e. L’instruction continue
L'instruction "continue" rompt une itération (dans la boucle), si une condition spécifiée
se produit, et continue avec l'itération suivante dans la boucle.

25
INITIATION À L’ALGORITHME
Algorithme et programmation C++
III. Les bases du langage C++
Exemple : for (int i = 0; i < 10; i++) {
if (i == 4) {
continue;
}
cout << i << "\n";
}

26
INITIATION À L’ALGORITHME
Algorithme et programmation C++
IV. La programmation C++
11. LES FONCTIONS
▪ Une fonction est un bloc de code destiné à un traitement et qui ne s'exécute que
lorsqu'elle est appelée.
▪ Une fonction peut avoir besoin des données extérieur pour le traitement. Dans ce cas
on le lui transmet en paramètres
a. Comment créer une function ?
préciser sont type de retour, et son noms.
Le type de retour est le type de la valeur du résultat que peux retourner une fonction
Syntaxe: type_retrour nom_fonction(){}
exemple : void myFunction() {
// bloc de code à exécuter
}
Void signifie que cette fonction ne retourne rien
N.B.: une fonction nommée main() est la fonction principale par laquelle commence
27
INITIATION À L’ALGORITHME
Algorithme et programmation C++
IV. La Les
l’execution de tout programme. programmation C++ bien après .
autres fonctions sont appélées
b. Fonction paramétrée
▪ Une fonction paramétrées est une fonction qui porte des paramètres.
Exemple : int max(int a, int b){
int res = b ;
if (a>b) res = a ;
return res ;
}
c. Appel d’une fonction:
syntaxe : nom_fonction():
▪ Si la fonction est paramétrée, on affecte entre parenthèse les valeurs des paramètres.
Exemple: max(12, 8)
d. Surcharge d’une fonction
Avec la surcharge de fonctions, plusieurs fonctions peuvent avoir le même nom avec
différents paramètres:
28
INITIATION À L’ALGORITHME
Algorithme et programmation C++
IV. La programmation C++
Exemples: int myFunction(int x)
float myFunction(float x)
double myFunction(double x, double y)

12. Notions des pointeurs et des références


a. qu’est-ce qu’un pointeur ?
Un pointeur est une variable contenant l'adresse mémoire d'une autre variable
d'un type donné. Il permet de manipuler une variable de façon dynamique.
b. Déclaration d'un pointeur :
Un pointeur est une variable qui doit être définie en précisant le type de variable
pointée, de la façon suivante :
type * Nom_du_pointeur;
Grâce au symbole '*' le compilateur sait qu'il s'agit d'une variable de type pointeur et
non d'une variable ordinaire.
29
INITIATION À L’ALGORITHME
Algorithme et programmation C++
IV. La programmation C++
c. Initialisation d'un pointeur .
Après avoir déclaré un pointeur il faut l'intialiser. Cette démarche est très importante
car lorsque vous déclarez un pointeur, celui-ci contient ce que la case où il est stocké
contenait avant, c'est-à-dire n'importe quel nombre. Autrement dit, si vous n'initialisez
pas votre pointeur, celui-ci risque de pointer vers une zone hasardeuse de votre
mémoire, ce qui peut être un morceau de votre programme ou... de votre système
d'exploitation !
Pour initialiser un pointeur, il faut utiliser l'opérateur d'affectation '=' suivi de l'opérateur
d'adresse '&' auquel est accollé un nom de variable (celle-ci doit bien sûr avoir été
définie avant...) :
Nom_du_pointeur = &nom_de_la_variable_pointee;

29
FIN

Vous aimerez peut-être aussi