Origine du mot
Le mot « algorithme » vient de la déformation du surnom du mathématicien persan Al-Khuwarizmi (né vers 780 - mort vers 850)
Une définition
Exemple
Algorithme | Python |
Si a>b alors d ← a - b Sinon d ← b - a Fin Si |
if a>b : d = a - b else d = b - a |
- cette structure est de type Si ... Alors ... Sinon .... Fin si
- l'affectation d'une variable n'utilise pas le signe égal mais une flèche indiquant que le résultat doit être rangé dans une variable,
- le fin d'un test doit être signalé par Fin Si. On retrouve des similitudes avec les scripts du bash linux.
Suivant l'enchaînement des règles le nombre d'étapes de l'algorithme peut être plus ou moins important, et sera fonction directement du nombre d'opérations élémentaires à réaliser pour obtenir le résultat.
La complexité permet donc de savoir si un algorithme est efficace ou pas.
Parfois la complexité sera notée sous forme mathématique :
Par exemple on repère que l'algorithme doit faire 6n2+3n+10 opérations élémentaires. On dira que l'algorithme est de complexité n2 : pour déterminer la complexité, on prend des valeur de n tendant vers l'infini, dans ce cas, 3n+10 devient négligeable devant n2.
On a éliminé les constantes, on conserve la puissance la plus élevée et on supprime le coefficient devant la puissance la plus grande.
Quelques règles d'écritures
Afin de pouvoir travailler pour la suite vous allez trouver la correspondance entre l'écriture en langage naturel et en python :
Algorithme | Python | |
Demander une saisie de l'utilisateur | Lire a | |
Afficher une variable ou valeur | Ecrire d |
|
Conditions : ET - OU - NON | Si a=b OU a>b alors | |
Test | Si Temp =< 5 Alors Ecrire "Il fait froid" SinonSi Temp < 30 Alors Ecrire "Température normal" Sinon Ecrire "Il fait trop chaud" Finsi |
|
Boucle 1 | Ecrire "Voulez vous un café ? (O/N)" TantQue Rep <> "O" et Rep <> "N" Lire Rep FinTantQue |
|
Boucle 2 | Truc ← 0 TantQue Truc < 15 Truc ← Truc + 1 Ecrire "Passage numéro : ", Truc FinTantQue |
|
Boucle 3 | Pour Truc ← 1 à 15 Ecrire "Passage numéro : ", Truc Truc Suivant FinPour |
|
Créer, utiliser des tableaux A noter que l'indice commence à 0 |
tab( ) ou tab[ ] |
Faire les exercices : 6.5 - 6.9 - 6.13
Pour chacun d'eux, vous le taperez dans python et le testerez.
Source des exemples : http://pise.info/algo/codage.htm