Vous êtes sur la page 1sur 2

Algorithmique/Forme d'écriture

Un même algorithme peut être écrit de différentes manières, selon les compétences ou les goûts de son auteur. On remarque
cependant deux grandes familles : la forme itérative et la forme récursive. Avant la présentation de ces familles, nous détaillerons
ce qu'est la condition d'arrêt.

Fonction factorielle : Tout au long de cette leçon, nous utiliserons comme exemple la fonction mathématique factorielle. Cette
fonction prend un entier en paramètre et retourne le produit des entiers strictement positifs inférieurs ou égaux à . Elle se note
.

Condition d'arrêt
La condition d'arrêt est le point précis de la fonction qui met fin à la procédure voulu. Ex : (forme itérative) la boucle while (tant
que).

---int veut exprimer que c'est un nombre entier, result le nom de la variable donnée (les nom des variables sont représentatifs pour
celui qui crée la fonction, mais l'ordinateur l'associe tout le long de la fonction écrite, on aurait pu l'appeler X cela ne changerait
rien).---

int result = 10; -----Variable X égale à dix--------

int sum = 1; -----Variable Y égale à un---------

Tant que (condition d'arrêt---variable X est plus grand que zéro---)----la fonction sera exécutée en boucle tant que X ne soit pas
égale à 0----

result et sum, qui sont dans la boucle, seront exécutés par la suite, il vérifie si la condition est atteinte, si oui cela met fin à la
boucle, sinon elle exécute à nouveau les variables result et sum, vérifie la condition temps et aussi longtemps que la condition soit
atteinte.

while ( result > 0 ) {

result = result - 1 ;--------Variable X égale à X - 1 (dans cet exemple la variable vaut 10 donc X = 10 -1, au
prochain tour la variable vaut 9 donc x = 9 - 1)-------

sum = sum + sum ;---------Variable Y égale à Y + Y donc Y = 1 + 1, au prochain tour Y = 2 + 2 , le tour


suivant Y = 4 + 4, jusqu'à temps que la condition d'arrêt soit atteinte.---------

Forme itérative
Un algorithme itératif est basé sur les procédures d'itération que sont le Tant que et le Pour. Il réalise donc une boucle jusqu'à ce
que la condition d'arrêt soit respectée.

Voyons l'exemple de la fonction factorielle(x) en itératif :


Exemple

Début
----
i ← x
résultat ← 1
Tant que i ≥ 1 faire
résultat ← résultat * i
i ← i - 1
Fin Tant que
Renvoyer résultat
----
Fin

Remarque : Nous aurions pu initier i à 1 et le faire croître.

Forme récursive
L'algorithme récursif, lui, est basé sur la récursivité mathématique. Il demande plus d'intuition de la part de son auteur mais peut
s'avérer plus simple d'écriture. La condition d'arrêt est de plus grandement utilisée.

Voici la fonction factorielle(x) en récursif :

Exemple

Début
----
Si i = 0 alors
Renvoyer 1
Sinon
Renvoyer x * factorielle(x - 1)
----
Fin

Récupérée de « https://fr.wikiversity.org/w/index.php?title=Algorithmique/Forme_d%27écriture&oldid=744097 »

La dernière modification de cette page a été faite le 23 novembre 2018 à 17:22.

Les textes sont disponibles sous licence Creative Commons Attribution-partage dans les mêmes conditions ; d’autres
conditions peuvent s’appliquer. Voyez les conditions d’utilisation pour plus de détails.

Vous aimerez peut-être aussi