PG : Programmation - Algorithmes

publicité
2nde
PG : Programmation - Algorithmes
Définition :
Un algorithme est une liste d’instructions à suivre, qui à partir de données, permettent d’obtenir des résultats
clairement définis en un nombre fini d’étapes.
calcul d’une valeur, existence d’une solution numérique, choix d’un chemin à suivre . . .
Exemple : Décomposition d’un calcul
Il s’agit simplement de considérer le calcul d’un nombre comme une suite d’étapes élémentaires.
Pour un nombre quelconque x, on calcule le nombre 2(x − 1)2 + 4.
Éventuellement déclarer les variables x et y
1 début
Multiplier
Prendre un
Retrancher
Élever au
2
Saisir x ;
Lire la valeur
par 2
nombre x
1
carré
3
y ← x−1 ;
Retrancher 1
4
y ← y2 ;
Élever au carré
Ajouter 4
5
y ← 2×y ;
Multiplier par 2
6
y ← y+4 ;
Ajouter 4
7
Afficher le résultat ;
2(x − 1)2 + 4
8 fin
Algorithme 1 : Langage algorithmique - Langage naturel
voici l’algorithme traduit en langage machine pour Algobox
1
2
3
4
5
6
7
8
9
10
11
VARIABLES
x EST_DU_TYPE NOMBRE
y EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE x
y PREND_LA_VALEUR x-1
y PREND_LA_VALEUR pow(y,2)
y PREND_LA_VALEUR 2*y
y PREND_LA_VALEUR y+4
AFFICHER y
FIN_ALGORITHME
Notions de variable et d’affectation :
Variable : dans un programme, une variable correspond à un emplacement de la mémoire de la calculatrice ou de
l’ordinateur. Elle est repérée par un nom et contient une valeur.
Affectation : L’instruction affectation permet d’attribuer une valeur à une variable.
« A prend la valeur 2 » signifie que la valeur 2 est affectée à la variable de nom A
Notions de boucles, de conditions :
Les boucles permettent d’itérer un processus un certain nombre de fois
Exemple : Pour k allant de 1 à N
Tant que « condition » faire
La condition permet de tester si une expression est vraie ou fausse
Exemple : Si « condition » (est vraie) alors . . . Sinon . . .
1
2
3
4
5
6
7
VARIABLES
x EST_DU_TYPE NOMBRE
y EST_DU_TYPE NOMBRE
k EST_DU_TYPE NOMBRE
n EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE n
http://lycee.lagrave.free.fr
8 POUR k ALLANT_DE 1 A n
9 DEBUT_POUR
10 TRACER_SEGMENT (x,y)->(x,y+1)
11 y PREND_LA_VALEUR y+1
12 TRACER_SEGMENT (x,y)->(x+1,y)
13 x PREND_LA_VALEUR x+1
14 FIN_POUR
15 FIN_ALGORITHME
1/1
Téléchargement