Algorithme Et Programmation N°1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 3

Algorithme et programmation n°1

1) Algorithme et notion de variable

Définition : Un algorithme est une suite fnie d’instructions à appliquer dans un ordre déterminé à un nombre fini de
données pour arriver, en un nombre fini d'étapes, à un certain résultat.

Exemples :
• Voici, ci-contre, un exemple d’algorithme rédigé en langage courant.

Nom : E1 Si on applique cet algorithme au nombre 3, on a :


Choisir un nombre.
...........................................................................................................................
Lui ajouter 1.
Multiplier le résultat par 2. Si on applique cet algorithme au nombre x, on a :
Soustraire 3 au résultat.
...........................................................................................................................
Afficher le résultat
On peut identifier cet algorithme à une fonction :
f (x) = ...............................

Nom : E1' On peut chercher à savoir quel nombre a donné 7 par exemple. Il faut alors
........................................................... remonter l’algorithme, on a alors :
........................................................... ............................................................................................................................
........................................................... Si on applique cet algorithme au nombre x, on a :
............................................................. ...........................................................................................................................
......................................................... La nouvelle fonction définie est alors :
g (x) = ...............................

2) Ecriture d'un algorithme


Un algorithme peut être écrit sous différentes formes :
le langage naturel : X ← nombre choisi
X ← X ×6
X ← X +10
X←X+2

le langage informatique par bloc ( scratch ) : le langage informatique textuel ( Python ) :

Dans le cas où on écrit l'algorithme sur un ordinateur, on parle de programme informatique ( ou de script ) au lieu
d'algorithme.

Attention, chaque langage de programmation possède sa propre syntaxe, c'est-à-dire ses propres règles à respecter pour
construire ses suites d'instructions compréhensibles et interprétables par le logiciel. Au lycée, on utilise le langage Python,
avec l'interface EduPython ( logiciel libre de droits, que je vous encourage vivement à
télécharger : https://edupython.tuxfamily.org/ ).
3) Variables
Dès que l’on a besoin de stocker une information au cours d’un programme, on utilise une variable : ce sont des "boites"
qui possèdent chacune un nom, et qui ont les propriétés suivantes :
• Une variable ne peut contenir qu'une seule donnée à la fois.
• Lorsqu'on affecte une valeur à une variable, le contenu précédent de celle-ci est effacé et perdu.
• Le contenu d'une variable ne change pas tant qu'on ne lui affecte pas de nouvelle valeur.

Les variables peuvent être de quatres types différents en seconde ( avec Pyton, il suffit de taper "type(x)" pour avoir accés
au type de la variable x ):
• entier : nombres entiers relatifs .
• Flottant : nombre réels .
• chaîne de caractères : suite ordonnée de caractères, un caractère étant un chiffre, une lettre, un symbole... toujours
écrit entre guillements .
• booléens : True (vrai) ou False (faux), on les retrouve lors de tests.

4) Affectation d’une variable

Pour stocker une valeur dans la variable X, on écrit une instruction d'affectation. En langage Python, l'affectation des
variables se fait avec le signe "=" et avec la syntaxe nom_de_la_variable = valeur.
En langage naturel, l'affectation se fait avec une flèche: X ← ...... . On lit : "X reçoit ........ " ou "X prend la valeur ..........".

Pour suivre les valeurs prises successivement par les variables d'un algorithme, on peut utiliser un tableau d'avancement
( c'est très souvent nécessaire ! ) :

Variables : A B
Etape 1 :
Etape 2 :
Etape 3 :
5) Exercices

Exercice 1 :
En utilisant un tableau d’avancement, donner les valeurs des variables en fin d’algorithme pour les deux algorithmes suivants
écrits en langage naturel :
a) A ← 15 b) X ← 5
B ← 3× A −7
2
Y← 2
A ← B−2 X ← −2× X +6
C ← A× B Y ← 8×X −2×Y
Exercice 2 :
Donner les valeurs des variables à l’issue de ce programme écrit en langage Python : x = 12
y=5
x = 3*x-5
y = 12*x+y
Exercice 3 :
On considère le programme suivant, écrit en langage Python : P = 10 ; q = 4 ; r = 2
p = p + q**2 + r
r =r-q
Que renvoie ce programme ? q=r-q
Exercice 4 :
On donne deux algorithmes écrits dans différents langage : (1) langage naturel et (2) langage Python.
Traduire chaque algorithme dans l’autre langage.
(1) F ← 2× F (2) m = m + 6
F ← F−10 m = 2*m
m=m-3
Exercice 5 :
Soit l’algorithme ci-contre, où A et B sont deux variables : C ←A
A←B
B←C
1) On donne à A la valeur 5 et à B la valeur 8. Que contiennent les variables A et B à la fin de l’algorithme ?
2) Même question si on affecte à A la valeur 57 et à B la valeur – 32,6 .
3) Quel semble être le rôle de cet algorithme ?
4) Démontrer cette conjecture, en affectant à A la valeur a et à B la valeur b ( où a et b sont deux nombres réels quelconques ).

Exercice 6 :
Le programme d’une application sportive comporte, entre autres, trois variables “nom”, “temps” et “total” correspondant
respectivement au nom de l’utilisateur, au nombre (entier) de minutes passées à faire du sport dans la journée et au nombre de
kilocalories dépensées, arrondi à 0,1kcal.
Dans la situation décrite ci-dessus, on a utilisé trois variables. Quels sont les types de chacune d’entre elles ?

Exercice 7 :
On souhaite écrire un programme dans lequel apparaissent des variables “ville”, “pluviométrie” et “ensoleillement” donnant
respectivement le nom de la ville considérée, sa pluviométrie ( en cm par m2 arrondi à 0,1 ) et son nombre de jours
d’ensoleillement de l’année en cours. Donner le type de ces variables.

Exercice 8:
On donne ci-dessous trois algorithmes.
1 A←Z–1 2 Z←Z–1 3 Z←Z–1
B ← A2 A ← Z2 B ← Z2
C←Z+1 Z←Z+1 A←Z+1
D ← C2 B ← Z2 C ← A2
Z←B+D Z ←A+B Z←B+C

1) Dans chaque cas, déterminer ce que contient la variable Z à la fin de l'exécution de l'algorithme lorsqu'elle contient en début
d'algorithme la valeur 3.
2) Lorsque la variable Z contient la valeur x au début de l'un de ces algorithmes, x étant un nombre, elle contient
( x−1)2+ (x+ 1)2 à la fin de l'exécution. Quel est cet algorithme ? Justifier.

Vous aimerez peut-être aussi