Vous êtes sur la page 1sur 47

Introduction à la programmation

et algorithmique

Introduction à la programmation et algorithmique


Introduction
Qu’est ce qu’un ordinateur :
une machine totalement dénuée d'intelligence
capable d’effectuer un grand nombre de tâches

Exécute très rapidement et sans erreurs les ordres


qu'on lui donne

Introduction à la programmation et algorithmique 2


Qu’est-ce qu’un programme ?
Assemblage et enchaînement d’instructions
élémentaires
Écrit dans un langage de programmation
Exécuté par un ordinateur afin de traiter les
données d’un problème
et renvoyer un ou plusieurs résultats

Introduction à la programmation et algorithmique 3


Environnement de programmation
Programme s’écrit dans un fichier texte
On écrit les commandes les unes à la suite des autres

Le compilateur
vérifie la syntaxe du fichier texte
 Avaancer au lieu de avancer
traduit en langage machine (100101100101001011…)

Introduction à la programmation et algorithmique 4


Environnement de programmation
Environnement de programmation dédié

Fichier
Fichier traduit
source compilateur

Affichage des Erreurs

Introduction à la programmation et algorithmique 5


Programmation
Un programme est réalisé dans le but d’effectuer un
ensemble de traitements particuliers sur un
ensemble de données
Définir sous quelle forme les données initiales seront
fournies à l’application
Définir sous quelle forme les résultats seront
communiqués
Expliciter les différentes actions à réaliser pour réaliser
cette tâche

Introduction à la programmation et algorithmique 6


Données et traitements
Donnée : valeur stockée
variable ou constante
Type
Traitement : opérations sur les données
 instructions

Données initiales Traitements résultats

Introduction à la programmation et algorithmique 7


Analyse du problème
Décomposer la tâche
Exemple simple : moyenne de 10 notes

notes Calculer moyenne


saisies Moyenne affichée

Additionner les Diviser la donnée


saisie Lire et stocker
données notes somme par 10
Afficher la affichage
les données Donnée écran
clavier notes
et stocker et stocker la
moyenne
donnée somme donnée moyenne

Introduction à la programmation et algorithmique 8


Sous programme
Sous-programme
Diviser pour mieux régner
Intérêts :
Programmer tâche par tâche
Meilleure lisibilité du code
Économie de codage et réutilisation
Inconvénients :
Nécessite de réfléchir en blocs de fonctionnalités

Introduction à la programmation et algorithmique 9


Algorithmique

Introduction à la programmation et algorithmique 10


Algorithmique
Un peu de vocabulaire…
Algorithme : enchaînement des actions (instructions)
nécessaires pour résoudre un problème
Différentes appellations
 langage algorithmique
 pseudo-langage de programmation
 pseudo-code)

Introduction à la programmation et algorithmique 11


Organisation d’un programme
Exemple d’un programme :
Plan
►Données
►Opérateurs
►Les instructions
►Tableaux
►Sous-programme
►Types structurés

Introduction à la programmation et algorithmique 13


Les données

Introduction à la programmation et algorithmique 14


Les données
Données = ensemble des informations manipulées
par un programme

Les données d'un programme sont mémorisées en


mémoire centrale dans des variables (sortes de cases)

Introduction à la programmation et algorithmique 15


Notion de variable
Une variable possède :
une valeur contenue par la case mémoire
un identificateur : nom unique par lequel on peut
accéder à son contenu
un type qui définit la taille de la place occupée
Ne pas confondre la variable et son contenu
Une variable est un contenant (case ou boîte)
Le contenu d'une variable est une valeur numérique,
alphanumérique…

Introduction à la programmation et algorithmique 16


Variable
Une variable est donc une « boite » dans laquelle
on met une valeur (un nombre, un mot…) qui peux
changer (si l’utilisateur modifie la valeur par
exemple)

Les variables dont la valeur ne change pas au cours


de l'exécution du programme sont appelées
variables constantes

Introduction à la programmation et algorithmique 17


Déclaration de variable
Déclarer une variable :
réserver une place en mémoire
attribuer l'identificateur à cette place
La déclaration indique :
l’identificateur
le type

Introduction à la programmation et algorithmique 18


Types
Type caractère
lettres, chiffres, ponctuation, code des opérations,
espace, retour chariot,…
Exemples : ‘a’ ‘+’ ‘.’

Type chaîne de caractère


suites de caractères
Exemples : « bonjour » « cac40 »

Introduction à la programmation et algorithmique 19


Types (Suite)
Type entier
les nombres entiers
Exemples : 3 45 133

Type réel
les nombres réels
Exemples : 3,14 37,7

Introduction à la programmation et algorithmique 20


Types (Suite)
Type booléen
que deux valeurs possibles
soit VRAI, soit FAUX

Introduction à la programmation et algorithmique 21


Exemples de variables
Mémoire centrale
(mémoire vive)
Identificateur : X
Type : entier
Valeur : 25
X 25

Identificateur : Y
Type : réel Y 3,7
Valeur : 3,7

Introduction à la programmation et algorithmique 22


Plan
►Données
►Opérateurs
►Les instructions
►Tableaux
►Sous-programme
►Types structurés

Introduction à la programmation et algorithmique 23


Les opérateurs

Introduction à la programmation et algorithmique 24


Opérateurs
Les opérations possibles sur les variables dépendent
de leur type
On ne peux pas multiplier des mots…

Introduction à la programmation et algorithmique 25


Réels
opérations possibles symbole ou mot clé
addition +
soustraction -
multiplication *
Division /
comparaisons <, ≤, >, ≥, =, ≠

Introduction à la programmation et algorithmique 26


Entiers
opérations possibles symbole ou mot clé
addition +
soustraction -
Multiplication *
Division /
Division entière DIV
Modulo MOD
Comparaisons <, ≤, >, ≥, =, ≠

Introduction à la programmation et algorithmique 27


Caractères
opérations possibles symbole ou mot clé
comparaisons <, ≤, >, ≥, =, ≠
(exemple ‘a’ < ‘z’)

Introduction à la programmation et algorithmique 28


Chaînes
opérations possibles symbole ou mot clé
Concaténation &
Longueur Longueur (chaîne)
Extraction Extraction (sous-ch, ch)

Introduction à la programmation et algorithmique 29


Booléens
opérations possibles symbole ou mot clé
comparaison =, ≠
négation NON
conjonction ET
disjonction OU

Introduction à la programmation et algorithmique 30


Le flux de sortie « COUT »
cout est la contraction de "c-out" (console out = sortie
console). Ce n’est pas une fonction mais un flux
Exemple :
cout << "Hello world!" << endl;
Vous constatez qu’il y a un nouveau symbole : le
chevron <.
 Nous le rencontrons d'ailleurs toujours par paire,
comme ceci : «
endl est un mot-clé qui signifie "fin de ligne" (end line
en anglais). Il est utilisé pour effectuer un saut de
ligne.
Introduction à la programmation et algorithmique 31
Le flux d’entrée « CIN »
Le mot-clé à connaître ici est cin, c’est la
contraction de "c-in", ce qui signifie entrée
console.
Exemple :
cin >> age;
Le chevron ici change de sens

Introduction à la programmation et algorithmique 32


Premier programme
#include <iostream>
using namespace std ;
void main()
{
cout << ”Hello word!” << endl;

Introduction à la programmation et algorithmique 33


Plan
►Données
►Opérateurs
►Les instructions
►Tableaux
►Sous-programme
►Types structurés

Introduction à la programmation et algorithmique 34


Les instructions

Introduction à la programmation et algorithmique 35


Instructions
Instruction = ordre que peut exécuter l'ordinateur
exécution d'un programme :
Échanges d'informations en mémoire
Calculs
Affichage des résultats

Introduction à la programmation et algorithmique 36


Informations
Les informations manipulées par les instructions
peuvent prendre plusieurs formes:
des variables
des constantes
des valeurs littérales ("bonjour", 45, VRAI)
des expressions complexes : combinaisons de variables,
constantes et valeurs littérales avec des opérateurs (2 * r
* 3.14)

Introduction à la programmation et algorithmique 37


Les instructions élémentaires
Affectation : le fait de donner une nouvelle valeur à
une variable (mettre un nombre dans une boite)
Saisir : Permet à l’ordinateur de récupérer ce que
l’utilisateur tape au clavier
afficher : Permet à l’ordinateur d’afficher sur l'écran ce
qu’on veux (le résultat d’un calcul, une variable…)

Introduction à la programmation et algorithmique 38


L’ affectation
Syntaxe :
Variable = Valeur

Valeur évaluée à partir d’une expression :


Variable (le contenu d’une autre boite…)
Constante (une valeur fixe : PI…)
valeur littérale (3 6 5.12…)
expressions complexes (un calcul…)

Introduction à la programmation et algorithmique


Exemples
X = Y;
X = 25;
X = 3,3;
C = ‘a’;
maChaine = «bonjour»;
B = true;
X = 25 + Y + 3;

Introduction à la programmation et algorithmique 40


Différence avec le = mathématiques
Quand on dit qu'une variable prend pour valeur une
autre variable, ça ne veut pas dire qu'elles seront
toujours égales !
Cela veut seulement dire que la première variable va
prendre la valeur de la seconde
Le contenu de la première boite sera le même celui de la
seconde boite…
Mais si on modifie le contenu de la seconde boite après,
ça n’a pas d’impact sur le contenu de la première
boite !

Introduction à la programmation et algorithmique 41


Exemples
C++ : x = y différend de y = x
Maths : x = y équivaut à y = x

C++ : x + 12 = y impossible !
Maths : x + 12 = y a un sens

C++ : x = x + 7 a un sens
Maths : x = x + 7 impossible

Introduction à la programmation et algorithmique 42


Exercice 1
Quelles seront les valeurs des variables A et B après
exécution des instructions suivantes ?
#include <iostream.h>
using namespace std ;
void main()
{
int A,B;
A=1;
B=A+3;
A=3;
cout << ”La valeur de A: ” <<A<< endl;
cout << ”La valeur de B: ” <<B<< endl;
}
Introduction à la programmation et algorithmique 43
Exercice 2
Quelles seront les C=A+B;
valeurs des variables A, B A=2;
et C après exécution des
instructions suivantes ?
C=B-A
#include <iostream> cout << A<< B<< C;
using namespace std ; }
void main()
{
int A,B,C;
A=5;
B=3;
Introduction à la programmation et algorithmique 44
Exercice 3
Les valeurs de A,B A=A+1;
#include B=A-4;
<iostream> cout << A<< B ;
using namespace }
std ;
void main()
{
int A,B;
A=5;
B=A+4;
Introduction à la programmation et algorithmique 45
Edmodo

Introduction à la programmation et algorithmique 46


Introduction à la programmation et algorithmique 47