Académique Documents
Professionnel Documents
Culture Documents
PROGRAMMATION
C++
Réaliser par:
Y. AIT HADDOU
#include<plan.h>
}
Les stratégies de programmation()
{
Il existe pas mal des stratégies qu’on utilise dans notre vie quotidien (« débuter toujours par la chose
facile »), de même il existe aussi des stratégies dans l’algorithmique ou la programmation on vous cite les
fréquemment utilisées:
• La stratégie itérative: la plus facile des stratégies il permet de résoudre le problème ou de converger
vers la solution en répétant des instruction plusieurs fois exemple: (essayez de calculez la puissance
d’un nombre réel en utilisant l’une des boucles);
• La stratégie récursive: c’est l’une des stratégies les plus élégantes il a un cas de base et cas inductif le
principe se repose sur l’appel de la fonction elle-même par elle (c’est un peu ambigu) exemple :
Algorithme: factoriel(n):
Input: n entier;
Début:
Si(n<0) retourner -1; (pour vous permettra d’afficher une erreur)
Sinon
Si(n==0 ou n==1) retourner 1; (cas de base f(1)=f(0)=1)
Sinon retourner n*factoriel(n-1); (cas inductif f(n)=n*f(n-1)
Fin Si;
Fin Si;
Fin;
Les stratégies de programmation()
{
• La stratégie « deviser pour renier »: c’est la stratégie la plus utilisée dans le monde il
permet donc d’après son nom de faire deviser le problème en plusieurs sous problème
identiques qui auront solution simples et les combiner pour avoir la solution du problème
finale. L’exemple classique c’est la puissance positive paire n d’un réel x :
Algorithme: puissancePostivePaire(n,x):
Input: n entier, x réel;
Début:
Si(n<0||n%2!=0) retourner -1; (pour vous permettra d’afficher une erreur)
Sinon
Si(n<=1) retourner x; (cas de base f(0)=0 f(1)=1)
Sinon retourner puissancePostivePaire(n/2,x)* puissancePostivePaire (n/2,x);
Fin Si;
Fin Si;
Fin;
}
Initialisation aux notions et structures de donnée()
{
• Les données: Ce sont des informations qui n’ont pas de sens autrement dit des informations souches qui peut
être interpréter dans plusieurs sens( 12 par exemple est un entier on dit donc c’est une donné mais si on ajoute
un ‘m’ on aura 12 m qui est une information sur la langueur d’une chose par exemple);
• Les variables: Les variables sont des types primitifs de données (c’est-à-dire il existe déjà dans les langages de
programmation et elles sont les bases pour créer d’autre types de données) en réalité ce sont des réservations de
mémoire automatiques qu’il effectue le compilateur(à définir plus tard) (exemples sur C++: int= entier(4 octets),
char= caractère(1 octets), float= réel(4 octet),string=chaine de caractère(taille de chaine x 1octet), double=les
grand nombres réels(8 octets));
• Les structures de données: Sont des types complexe et qui n’existe pas sur tout les langages à connaitre ( les
Tableaux, Les structures, Les piles, Les files, Les listes chaînées, Les arbres et les graphes…) qui ont une taille
variable;
}
Introduction au langage C++();
{
Le langage C++ est un langage évolué et structuré. C’est en ce sens une évolution du langage C.
Il possède en outre les fonctionnalités de la programmation orienté objet. Le langage C++ se trouve à la
frontière entre le langage C, non objet, et le langage JAVA conçu d’emblée en orienté objet.
On trouve sur le marché un grand nombre de compilateurs C++ destinés à différents microprocesseurs ou
microcontrôleurs. Le langage C++ possède assez peu d'instructions, il fait par contre appel à des bibliothèques,
fournies en plus ou moins grand nombre avec le compilateur. exemples:
math.h : bibliothèque de fonctions mathématiques
iostream : bibliothèque d'entrées/sorties standard
complex.h : bibliothèque contenant la classe des nombres complexes.
On ne saurait développer un programme en C++ sans se munir de la documentation concernant ces
bibliothèques.