Istp Algo Programmaton C 035902
Istp Algo Programmaton C 035902
Istp Algo Programmaton C 035902
Enseignant(e) :
Mme Niangui Mona Nély Espérance
PLAN DU COURS
OBJECTIFS
Acquérir les concepts de base de l'algorithmique et de la
programmation.
Définir les types de données de base
Se familiariser à un langage de programmation structuré et à son
environnement de développement
Utiliser des structures de contrôles.
Manipuler des sous programmes et des types structurés (tableaux,
intervalles et ensembles, …).
CONTENU
I. INTRODUCTION A L’ALGORITHMIQUE
II. LES CONCEPTS DE BASE
III. LES STRUCTURES DE CONTROLE
IV. IV. LES TABLEAUX
REFERENCES BIBLIOGRAPHIQUES
1. Jacques Courtin, Initiation à l'algorithmique et aux structures de données,
Edition DUNOD, 1998
2. Michel Divay, Algorithmes et structures de données génériques - 2ème
édition, Edition Dunod
3. Thabet Slimani, Programmation et structures de données avancées en
langage C, cours et exercices corrigés, 2014,
4. Damien Berthet, Vincent Labatut, Algorithmique & programmation en
langage C vol.1
5. Pierre-Antoine Champin, Bonnes pratiques de programmation.
Université Claude Bernard Lyon 1, 2017
6. Kyle LOUDON, traduction d’Éric JACOBONI, ALGORITHMES EN C,
O’ Reilly & Associates, Paris 2000,2001, 2002
7. Granet. VMini manuel d’algorithmique et de programmation, 2010,
8. Haro Eni C., Algorithmique-Raisonner pour concevoir, Dunod, 2009.
9. Flasque N., Kassel H., Velikson B, Lepoivre F., 2010, Exercices et
problèmes d’algorithmique, Dunod.
CHAPITRE I : INTRODUCTION A L’ALGORITHMIQUE
I.1 Définitions
Le terme informatique : l’informatique est une science qui permet de traiter
automatiquement les informations.
Les commentaires
L’ajout de commentaires dans les algorithmes et les programmes peut s’avérer
fort utile. En effet, outre le fait de pouvoir retrouver plus facilement les blocs
d’instructions que vous venez de créer, les commentaires pourront vous être d’un
immense secours le jour où vous devrez reprendre votre code.
La lisibilité du code est, d’ailleurs, un des principaux critères de détermination
d’un algorithme. Les commentaires sont invisibles après l’exécution du
programme : ils ne sont pas pris en charge par le programme.
Pour ajouter les commentaires dans une instruction, on utilise les symboles % au
début et à la fin du commentaire.
Exemple : % ceci est un commentaire%
L’ajout de commentaires dans un bloc de code C++ s’effectue de manière mono
ligne ou multi lignes. Les commentaires contenus sur une seule ligne seront
précédés du double slash //. Les commentaires ne pouvant pas être contenus sur
une seule ligne seront précédés de /* et devront se terminer par */.
Exemple :
//Ceci est un commentaire monoligne
/* Ceci est un commentaire sur plusieurs lignes */
Une constante est une variable dont la valeur associée ne varie pas au cours du
programme. Nous pourrons l’écrire entièrement en majuscule,
par exemple PI = 3.14
L’affectation est l’opération qui consiste à attribuer une valeur à une variable.
Cette valeur peut elle-même être une variable, le résultat d’une expression
arithmétique ou logique ou une constante
Important : une variable ne peut contenir qu'une seule valeur à la fois.
On peut sans aucun problème attribuer à une variable la valeur d’une autre
variable, à condition qu’ils soient de même type.
Syntaxe :
type nom_de_la_variable = Exemple :
valeur_affectée ; ou
type nom_de_la_variable ; int nbre_1= 20 ;
nom_de_la_variable = int nbre ; nbre=20 ;
valeur_affectée ;
Exemple: a b² + c²
chiffre 364+2*3
note chiffre *0,75 / 100
moyenne note * 5 - chiffre
L’expression située à droite de la flèche doit être du même type que la variable
située à gauche.
Les opérateurs
Un opérateur est un signe qui relie deux valeurs, pour produire un résultat.
1- Opérateurs sur les entiers et les réels
2- Opérateurs sur les entiers et les booléens
Opération d’Entrée :
Cette opération est encore appelée Lecture ou Saisie, elle consiste à entrer les
données dans la machine, elle s’effectue généralement par la saisie au clavier.
Syntaxe: Lire (NomVariable) ; Saisie (NomVariable) ;
Lire (NomVariable1, NomVariable2,… NomVariable1)
La saisie interrompt le programme jusqu'a ce que l'utilisateur ait saisi une valeur
au clavier. Une fois cela fait, la valeur saisie est placée dans la variable
NomVariable. Il est possible de saisir plusieurs variables a la suite.
Opération de Sortie:
Cette opération est encore appelée Ecriture ou Affichage, elle consiste à afficher
les messages et les résultats des traitements de données à l’écran.
Syntaxe: Ecrire (NomVariable) ; Affiche (NomVariable)
Exemple 1: Affiche les valeurs des variables A, age à l’écran.
Ecrire (A)
Ecrire (age)
Exemple 2:
Ecrire ("Bonjour le Monde")
Ecrire ("Vous avez", age)
Exemple :
Créer un algorithme qui calcule et affiche l’aire d’un rectangle après que
l’utilisateur est entré les dimensions du rectangle.
Algorithme Calcul_Aire_rectangle Programme C++
Variables : #include<iostream>
longueur, largeur : using namespace std ;
entier int main()
aire : entier {
DEBUT int longueur, largeur ,aire;
Ecrire ("Entrer la longueur") cout<< ‘‘Entrez la
Lire (longueur) longeur’’<<endl ;
Ecrire ("Entrer la largueur") cin>>longueur ;
Lire (largeur)
aire longueur * largeur cout<< ‘‘Entrez la
Ecrire (aire) largeur’’<<endl ;
FIN cin>>largeur ;
Fin de l’algorithme aire=longeur*largeur ;
cin>>aire ;
return 0 ;
}
CHAPITRE III : LES STRUCTURES DE CONTROLE
III.1.1. LE TEST SI
Encore appelée structure conditionnelle, un test permet d’exécuter une séquence
d’instructions si une condition est vérifiée.
Syntaxe d’une structure de test simple
Si (condition) Alors if(condition)
{
<Séquence d’instructions> <Séquence d’instructions>
FinSi }
La structure simple d’un test est relativement claire, arrivé à la première ligne
(Si… Alors) la machine examine la valeur de la condition. Si la cette valeur est
VRAI, elle exécute la séquence d’instructions.
Cette séquence d’instructions peut être très brève comme très longue, cela n’a
aucune importance. En revanche, dans le cas où la condition est FAUX,
l'ordinateur saute directement aux instructions situées après le FinSi.
Une condition s’exprime sous forme d’une expression logique (Booléenne).
Elle peut être:
• simple (condition simple): VRAI , FAUX
• ou combinée (plusieurs conditions composées) avec des opérateurs
logiques ET, OU, NON, et des opérateurs de comparaison.
Une boucle permet d'exécuter plusieurs fois de suite une même séquence
d'instructions.
Cette ensemble d'instructions s'appelle le corps de la boucle.
Chaque exécution du corps d'une boucle s'appelle une itération, ou encore un
passage dans la boucle. Il existe trois types de boucle :
tant que … faire
répéter ... jusqu’à
pour … faire
Le principe est simple : le programme arrive sur la ligne du tant que. Il examine
alors la valeur de la condition (qui, je le rappelle, peut être une variable
booléenne ou une expression). Si cette valeur est VRAI, le programme exécute
les instructions qui suivent, jusqu’à ce qu’il rencontre la ligne fin tant que. Il
retourne ensuite sur la ligne du tant que, procède au même examen, et ainsi de
suite. Le manège enchanté ne s’arrête que lorsque la condition n’est plus vérifier
(le booléen prend la valeur FAUX).
Implantation C++
for(compteur= valeur_initiale ; compteur<= valeur _finale ; compteur++)
{
<Séquence d’instructions>
}
Cette structure permet de répéter une séquence un nombre connu de fois.
Le compteur est une variable de type entier. La valeur initiale et la valeur finale
sont des constantes ou des variables de type entier. L’incrément (pas) est la
valeur d’augmentation progressive du compteur. La valeur par défaut du pas est
de 1 (dans le cas où on ne le précise pas).
Si la valeur initiale est égale à la valeur finale, la séquence d’instruction définie
est exécutée une seule fois.
Par contre, la séquence d’instruction n’est pas exécutée dans deux cas:
• Si la valeur initiale est strictement supérieure à la valeur finale alors que
l’incrément est positif, ou bien
• Si la valeur initiale est strictement inférieure à la valeur finale alors que
l’incrément est négatif.
La structure pour … faire est une simplification de la structure suivante:
Algorithme Tables_Multiplication
Variables :
i , j : entier
Début nnnn,,,,
Ecrire (" Tables de multiplication : ")
Pour ( i := 1 à 12 ) faire
Pour ( j := 1 à 12 ) faire
Ecrire ( j, " * ", i , " = " , j * i )
Fin pour
Fin pour
Fin
Fin Algorithme