Nous avons vu que pour que les machines puissent résoudre des problèmes, il fallait traduire ces problèmes en algorithmes.
Nous allons voir maintenant quels sont les ingrédients de base d'un algorithme, puis comment écrire ces instructions en Python.
Un algorithme utilise cinq ingrédients de base:
Source Les ingrédients des algorithmes sur le site Interstices
Pour que les ordinateurs réalisent nos algorithmes, nous devons écrire les séquences d'instructions dans un langage de programmation, dans notre cas Python.
En Python, les lignes du programme sont exécutées de haut en bas, à l'exception:
#
.python |print("Hello") |# print("World") |
N'affichera que "Hello"
en sortie car la deuxième ligne est
commentée donc non exécutée.
python |print("Hello") | print("World") |
Renvoie une erreur IndentationError
car la deuxième ligne est
indentée et ne devrait pas l'être.
Attention, en python la mise en forme du code et son indentation a un sens
python |if 2 > 3: | print("Hello") |print("World") |
N'affichera que "World"
en sortie car la deuxième ligne
fait partie d'un bloc conditionnel Faux non exécutée. En effet, 2 n'est pas inférieur à 3, donc
toutes les lignes du bloc qui le suivent ne sont pas exécutées.
Il s'agit de blocs d'instructions exécutés en fonction de certaines conditions, nous voyons ici:
if
(si en français), qui peut être complété par unelse
(sinon en français), ou encore unelif
(sinon si en français):python |n = int(input("Entrez un nombre entier")) |if n % 2 == 0: | print("Ce nombre est pair") |elif n % 2 == 1: | print("Ce nombre est impair") |else: | print("Vous n'avez pas dû rentrer un nombre entier") |
Affichera par exemple '3.7.0 (default, Jul 15 2018, 10:44:58) \n[GCC 8.1.1 20180531]'
en sortie, puis 'Vous utilisez Python 3
puisque la chaîne de
caractères sys.version
commence par la lettre "3"
.
Pour effectuer des répétitions en boucle, on utilise les instructions:
for
: pour en français.while
: tant que en français.C'est un moyen de donner un nom à des valeurs afin de pouvoir les réutiliser aisément par la suite.
python |PI = 3.141592653589793 |R = 1 |print("Le périmètre est:", 2*PI*R) |print("La surface est:", PI*R**2) |
Nous avons ici affecté deux variables PI
et R
dont nous pouvons nous servir tout au long du programme par la suite.
Il s'agit de blocs d'instructions exécutés à la demande, on les introduits par le mot-clef def
.
python |def calcule_surface(r): | PI = 3.141592653589793 | S = PI*r**2 | return S |
Nous venons de définir la fonction, mais pour l'instant, il ne se passe rien.
Il faut maintenant appeler la fonction avec un paramètre pour que l'exécuter.
python |calcule_surface(1) |
Renvoie 3.141592653589793
, la surface d'un disque de rayon 1.