Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Licence CC BY-NC-ND Thierry Parmentelat & Arnaud Legout Inria - UCA

Complément - niveau basique

Voici un premier exemple de code qui tourne.

Nous allons commencer par le faire tourner dans ce notebook. Nous verrons en fin de séance comment le faire fonctionner localement sur votre ordinateur.

Le but de ce programme est de calculer la suite de Fibonacci, qui est définie comme ceci :

Ce qui donne pour les premières valeurs :

nfibonacci(n)
00
11
21
32
43
55
68
713

On commence par définir la fonction fibonacci comme il suit. Naturellement vous n’avez pas encore tout le bagage pour lire ce code, ne vous inquiétez pas, nous allons vous expliquer tout ça dans les prochaines semaines. Le but est uniquement de vous montrer un fonctionnement de l’interpréteur Python et de IDLE.

def fibonacci(n):
    "retourne le nombre de fibonacci pour l'entier n"
    # pour les deux petites valeurs de n, on peut retourner n
    if n <= 1:
        return n
    # sinon on initialise f2 pour n-2 et f1 pour n-1
    f2, f1 = 0, 1
    # et on itère n-1 fois pour additionner
    for i in range(2, n + 1):
        f2, f1 = f1, f1 + f2
#        print(i, f2, f1)
    # le résultat est dans f1
    return f1

Pour en faire un programme utilisable on va demander à l’utilisateur de rentrer un nombre ; il faut le convertir en entier car input renvoie une chaîne de caractères :

# ici j'initialise 'entier' - ce n'est pas vraiment nécessaire
# mais j'ai besoin de le faire pour des raisons sordides
# liées à la génération du PDF...

entier = 10
# on s'arrange pour ne pas exécuter ceci dans le contexte 
# de la production du PDF car ça bloquerait indéfiniment..

entier = int(input("Entrer un entier "))

On imprime le résultat :

print(f"fibonacci({entier}) = {fibonacci(entier)}")
fibonacci(10) = 55

Exercice

Vous pouvez donc à présent :

$ python3 fibonacci_prompt.py

Ce code est volontairement simple et peu robuste pour ne pas l’alourdir. Par exemple, ce programme se comporte mal si vous entrez un entier négatif.

Nous allons voir tout de suite une version légèrement différente qui va vous permettre de donner la valeur d’entrée sur la ligne de commande.