Algorithmes

Signaler

Au collège, vous avez utilisé le logiciel Scratch pour exécuter des algorithmes. Qu’est-ce qu’un algorithme ? Quel rapport y a-t‑il entre un algorithme et un programme ?

I Algorithmes

En simplifiant, on peut dire qu’un algorithme est une suite finie de tâches à ­effectuer (on dit aussi à exécuter) dans un ordre déterminé.

Exemples :

Algorithme en langage naturel

Algorithme dans Scratch

PB_Bac_05294_Mat2_TT_p009-026_C01_Algo_0

04539_C01_01_capture

Repère
À noter

Les instructions du logiciel Scratch sont prédéfinies et ont la forme de pièces de puzzle.

Lorsqu’on lance l’algorithme dans Scratch en cliquant sur le drapeau, le lutin dit « Hello ! » pendant trois ­secondes, puis l’ordinateur joue le son « miaou ».

II Programmes

1 Programme, script, code

Un programme, que l’on dénomme aussi script, est la traduction d’un algorithme dans un langage compréhensible par un utilisateur (personne ou machine).

Si on veut faire exécuter un algorithme par un ordinateur, on doit utiliser un langage adapté (par exemple, Python), qu’on appelle aussi un code.

2 Variables informatiques

04539_C01_02_capture

Lorsque l’ordinateur exécute un code, les noms des variables ne changent pas, mais leurs ­contenus peuvent changer à chaque exécution d’une instruction.

Exemple : Ci-contre, la variable x contient au départ la valeur 0 (c’est l’initialisation) puis x prend la valeur 3, puis y prend la valeur 32 ; puis x prend la valeur 6, puis y prend la valeur 62 et ainsi de suite jusqu’à ce que x prenne la valeur 30 puis y la valeur 900.

Méthode
Simuler l’exécution d’un programme04539_C01_03_capture

On considère l’algorithme Scratch ci-contre.

Quel est le contenu des variables x et y lorsque l’exécution du code s’achève ?

Repère
Conseils

Exécutez le code pas à pas et visualisez les différents contenus de x et de y en respectant la condition de la répétition.

solution

Lors du lancement du programme, la variable x contient le nombre 0 et la variable y est vide.

Le tableau suivant indique en bleu le contenu des variables x et y lors des trois premières exécutions des instructions.

Étiquette

x

y

 

État 1

0

vide

État initial

Exécution des instructions

Première exécution

État 2

1

2

 

Exécution des instructions

Deuxième exécution

État 3

2

4

 

Exécution des instructions

Troisième exécution

État 4

3

6

 

Le code s’achève lorsque la variable x contient la valeur 10. La variable y contient alors la valeur 20, calculée à la dixième exécution.

En effet, l’algorithme ordonne d’exécuter les instructions tant que le contenu de la variable x est inférieur ou égal à 10. Avant l’éventuelle onzième exécution, l’algorithme vérifie si x = 10. C’est le cas, il s’arrête alors. Le contenu de la variable y est donc 20.

Étiquette

x

y

 

État 10

9

18

 

Exécution des instructions

Dixième exécution

État 11

10

20

 

Exécution des instructions

Onzième exécution

Arrêt du programme

Fin du script