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

La Programmation de Base en C/C++ Après Les Bases D'algorithmique

Transféré par

k.muwamba
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)
9 vues32 pages

La Programmation de Base en C/C++ Après Les Bases D'algorithmique

Transféré par

k.muwamba
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

La programmation de base en C/C++ après

les bases d’algorithmique

1ère Année des deux années Cycle


1 Préparatoire

Pr. Fatima Zohra El Hlouli


Département Mathématiques et Informatique
[Link]@[Link]
Année 2024 / 2025
2 Objectifs du cours

 Faire la différence entre C et C++

 Écrire un programme simple en C et C++

 Comprendre les structures de base (conditions, boucles, fonctions)

 Manipuler les tableaux


3 Introduction au langage C/C++

Le langage C :
 Créé dans les années 1970 par Dennis Ritchie
 Langage procédural : basé sur les fonctions
 Utilisé pour la programmation bas niveau (systèmes, embarqué, etc.)
 Très rapide et efficace
Le langage C++ :
 Créé dans les années 1980 par Bjarne Stroustrup
 Extension du C : ajoute la programmation orientée objet
 Permet de programmer avec des classes et objets
 Plus moderne, mais reste compatible avec le C
4 Exemple en C
#include <stdio.h>

int main() {
printf("Bonjour, monde !\n");
return 0;
}
5 Exemple en C++

#include <iostream> // Inclusion d'une bibliothèque standard


using namespace std; //Utilisation de l'espace de noms standard

int main() {
cout << "Bonjour, monde !" << endl; // Affichage
return 0; // // Fin du programme
}
6 Fonction en C

En C, il y a deux manières pour définir une fonction, par contre en C++


seule la deuxième forme est retenue :

Forme1 Forme 2
int fonct(u,v) int fonct(int u,int v)
int u; {
int v; …
{ }

}
7 Constantes locales

En C En C++
#include <iostream>
#include <stdio.h>
int main() {
int main() { const int x = 10;
const int x = 10;
std::cout << "La valeur de x est : " << x << std::endl;
printf("La valeur de x est : %d\n", x); x=20; //Ereur
// x = 20; // Cela générera une return 0;
erreur de compilation, car x }
est constant.
return 0;
}
8 Entrées/Sorties
En C les fonctions d'entrée/sortie standard printf et scanf de la bibliothèque
<stdio.h> sont utilisées pour l'affichage et la saisie de données.

#include <stdio.h>
int main() {
int x;
printf("Entrez un nombre : ");
scanf("%d", &x);
printf("Vous avez saisi : %d\n", x);
return 0;
}
Entrées/Sorties
9

En C++ les fonctions d'entrée/sortie standard sont basées sur la


bibliothèque <iostream> et utilisent des objets tels que std::cin et
std::cout pour gérer l'E/S.
#include <iostream>
int main() {
int x;
std::cout << "Entrez un nombre : ";
std::cin >> x;
std::cout << "Vous avez saisi : " << x <<
std::endl;
return 0;
}
Entrées/Sorties
10

Action En C (scanf) En C++ (cin)

Lire un int scanf("%d", &x); cin >> x;

Lire un float scanf("%f", &x); cin >> x;

Lire un double scanf("%lf", &x); cin >> x;

scanf("%s", &nom); cin >> nom;


Lire une chaîne
scanf("%c", &sex); cin >> sex;
11 Opérateurs et expressions
Opérateur Effet

+= additionne deux valeurs et stocke le résultat dans la variable (à gauche)

-= soustrait deux valeurs et stocke le résultat dans la variable

*= multiplie deux valeurs et stocke le résultat dans la variable

/= divise deux valeurs et stocke le résultat dans la variable

Opérateur Dénomination Effet Syntaxe

++ Incrémentation Augmente d'une unité la variable x++

-- Décrémentation Diminue d'une unité la variable x--


12 Opérateurs et expressions

Types d’opérateurs importants :


•Affectation : =
•Arithmétiques : +, -, *, /, %
•Comparaison : ==, !=, <, >, <=, >=
•Logiques : &&, ||, !
Exercice( un nombre est pair ou impair )
13
#include <iostream>
using namespace std;
int main() {
int nombre;
cout << "Entrez un nombre entier : ";
cin >> nombre;
if (nombre % 2 == 0) {
cout << nombre << " est pair." << endl;
} else {
cout << nombre << " est impair." << endl;
}
return 0;
}
14 Les structures de contrôle ( Conditions )

La structure conditionnelle if permet de réaliser un test et


d'exécuter une instruction ou non selon le résultat de ce
test. Où test est une expression dont la valeur est
booléenne. Sa syntaxe est la suivante :
if (test) { opération1; }

else { operation 2; }
15 Les structures de contrôle ( Conditions
imbriquées)
if (test) { opération1; }
else if (test1) { opération2; }
else { operation 3; }
Exercice (Trouver le maximum de 3 nombres avec if )
16 #include <iostream>
using namespace std;
int main() {
int a, b, c;
cout << "Entrez trois nombres : " << endl;
cin >> a >> b >> c;
if (a >= b && a >= c) {
cout << "Le maximum est : " << a << endl;
} else if (b >= a && b >= c) {
cout << "Le maximum est : " << b << endl;
} else {
cout << "Le maximum est : " << c << endl;
}
return 0; }
17 Le branchement conditionnel Switch

switch (valeur)
{ case cas1: instruction; break;
case cas2: instruction; break;
case casN: instruction; break;
default: instruction; break;
}
18 Le branchement conditionnel Switch

i= 2;
switch (i)
{
case 1:
case 2: /* Si i=1 ou 2, la ligne suivante sera exécutée. */
i=2-i;
break;
case 3: i=0; /* Cette ligne ne sera jamais exécutée. */
default:
break;
}
19 Exercice

Écrivez un programme qui demande à l'utilisateur d'entrer un numéro de


mois (un entier entre 1 et 12). Ensuite, en utilisant une instruction switch
case, affichez le nom du mois correspondant. Si l'utilisateur entre un
nombre qui n'est pas entre 1 et 12, affichez un message d'erreur
indiquant que le numéro de mois est invalide.
20 Les structures de contrôle ( Boucle pour)

La structure de contrôle for permet de réaliser toutes sortes de boucles


et, en particulier, les boucles itérant sur les valeurs d'une variable de
contrôle.

Sa syntaxe est la suivante :

for (initialisation ; test ; itération)


// instructions à répéter
Exemple 16 : Table de multiplication avec une boucle for
21

#include <iostream>
using namespace std;
int main() {
int nombre;
cout << "Entrez un nombre pour afficher sa table de multiplication : ";
cin >> nombre;
for (int i = 1; i <= 10; i++) {
cout << nombre << " x " << i << " = " << nombre * i<< endl;
}
return 0;
}
22 Les structures de contrôle ( Boucle while)

Le while permet d'exécuter des instructions en boucle tant


qu'une condition est vraie. Sa syntaxe est la suivante :

while (test)
{
opération; }
où opération est effectuée tant que test est vérifié. Comme pour
le if, les parenthèses autour du test sont nécessaires. L'ordre
d'exécution est :
23 Les structures de contrôle ( Boucle
do while)
La structure de contrôle do permet, tout comme le while, de
réaliser des boucles en attente d'une condition. Cependant,
contrairement à celui-ci, le do effectue le test sur la condition
après l'exécution des instructions. Cela signifie que les
instructions sont toujours exécutées au moins une fois, que le
test soit vérifié ou non. Sa syntaxe est la suivante :

do
{
operation;}
while (test);
opération est effectuée jusqu'à ce que test ne soit plus vérifié.
Exercice: Demander un mot de passe jusqu’à ce qu’il soit correct
24
#include <iostream>
#include <string>
using namespace std;
int main() {
string motDePasse;
string motDePasseCorrect = "1234";
do {
cout << "Entrez le mot de passe : ";
cin >> motDePasse;
if (motDePasse != motDePasseCorrect) {
cout << "Mot de passe incorrect. Essayez à nouveau." << endl;
}
} while (motDePasse != motDePasseCorrect);
cout << "Accès autorisé !" << endl;
return 0;
}
25 Exercice : Compter de 1 à 10 avec While
#include <iostream>
using namespace std;
int main() {
int compteur = 1; // Initialisation
while (compteur <= 10) { // Condition
cout << compteur << " "; // Affichage
compteur++; // Incrémentation
}
cout << endl; // Saut de ligne
return 0;
}
26 Exercice

🔸 Écrire un programme qui affiche tous les nombres pairs entre 1 et 20


en utilisant une boucle for.
🔸 Refaire le même exercice avec une boucle while.
Fonctions en C
27
#include<stdio.h>
int produit(int a,int b)
{
int r;
r=a*b;
Return r;
}
int main()
{
int a,b,r;
printf ("saisir deux entiers:");
scanf("%d %d",&a,&b);
r=produit(a,b);
printf("\ n résultat =%d",r);
Return 0; }
Fonctions en C++
28
#include <iostream>
using namespace std;
int produit(int a, int b) {
return a * b;
}
int main() {
int x, y ;
cout << "Saisir les valeurs x et y "<<endl;
cin>> x;
cin>> y;
cout<< "Produit = " << produit(x, y) << endl;
return 0;
}
Exemple 19: Fonction pour calculer la factorielle
29
#include <iostream>
using namespace std;
int factorielle(int n) {
int resultat = 1;
for (int i = 1; i <= n; i++) {
resultat *= i;
}
return resultat;
}
int main() {
int nombre;
cout << "Entrez un nombre : ";
cin >> nombre;
cout << "La factorielle de " << nombre << " est : " << factorielle(nombre) << endl;
return 0;
}
30 Les Tableaux

int tableau[10];
int indice;
for (indice = 0; indice < 9; indice++) {
tableau[indice] = 0;
}
Ainsi, l'instruction suivante permet d'initialiser tous les éléments
du tableau à zéro :
int tableau[10] = {0};
Exemple 20 : Trouver la somme des éléments d'un tableau
31 #include <iostream>
using namespace std;
int main() {
int taille;
cout << "Entrez la taille du tableau : ";
cin >> taille;
int tableau[taille];
int somme = 0;
cout << "Entrez les éléments du tableau : " << endl;
for (int i = 0; i < taille; i++) {
cin >> tableau[i];
somme += tableau[i];
}
cout << "La somme des éléments est : " << somme << endl;
return 0;
}
Exercice : Trouver la somme des éléments d'un tableau en utilisant la
function somme #include <iostream>

32 using namespace std;

int Somme (int tab[ ],int taille)

int i,som=0;

for ( i = 0; i < taille; i++) {

som= tab[i]+som;

return som;}

int main() {

int taille;

cout << "Entrez la taille du tableau : ";

cin >> taille;

int tableau[taille];

int somme = 0;

cout << "Entrez les éléments du tableau : " << endl;

for (int i = 0; i < taille; i++) {

cin >> tableau[i]; }

cout << "La somme des éléments est : " << Somme(tableau,taille) ;

return 0; }

Vous aimerez peut-être aussi