Zhentao Li's Homepage

email:zl zli2 com

 // home


Exercice 1 - Hello world!

  1. Écrire un programme qui affiche la chaîne de caractères "Hello world!"
print "Hello world!"

Exercice 2 - Un peu de maths

Écrire un programme qui affiche la table de multiplication par 7. Le résultat devra être affiché sous la forme :

7 fois 1 font  7
7 fois 2 font 14
7 fois 3 font 21
7 fois 4 font 28
7 fois 5 font 35
7 fois 6 font 42
7 fois 7 font 49
7 fois 8 font 56
7 fois 9 font 63
i = 1
while i <= 9:
    print "7 fois %s font %s" % (i, 7 * i)
    i = i + 1

Visualiser l'exécution

Modifier votre programme pour afficher toutes les tables de multiplication de 1 à 9, avec un saut de ligne entre chaque.

j = 1
while j <= 9:
    i = 1  # Initialisation de la valeur i pour effectuer la deuxieme boucle
    while i <= 9:
        print "%s fois %s font %s" % (j, i, i * j)
        i = i + 1
    print  # Affichage d'une ligne vide
    j = j + 1

Visualiser l'exécution

Un nombre est premier si il est divisible uniquement par 1 et par lui-même. Une méthode naïve pour tester si un nombre n > 2 est premier est donc de vérifier que, pour chaque x entre 2 et n - 1, n n'est pas divisible par x (c'est-à-dire, le reste de la division de n par x n'est pas nul).

Écrire un programme qui affiche tous les nombres premiers inférieurs à 10000.

n = 2
while (n < 10000):
    est_premier = True  # variable booleenne qui indique si n est premier
    # Tester tous les diviseurs de 2 a n pour vois s'il divise n.
    diviseur = 2
    while diviseur < n:
        # n n'est pas pas premier !!!
        if (n % diviseur == 0):
            est_premier = False
            break # Nous avons notre reponse pour n. Plus la peine de tester les autres diviseurs.
        diviseur = diviseur + 1
    if est_premier:
        print n,
    n = n + 1
print

La suite de Fibonacci est définie par F0 = F1 = 1 et Fn+2 = Fn+1 + Fn (i.e. chaque nouvel élément est la somme des deux précédents).

Écrire un programme qui calcule les 30 premiers éléments de la suite de Fibonacci.

n_max = 30

n = 0
fibonacci_n = 1   # F_n nombre de Fibonacci de rang n
fibonacci_suivant = 1 # F_{n+1} nombre de Fibonacci de rang n+1

while n < n_max:
    print fibonacci_n,
    n = n + 1
    fibonacci_precedent = fibonacci_n
    fibonacci_n = fibonacci_suivant
    fibonacci_suivant = fibonacci_suivant + fibonacci_precedent
print

Visualiser l'exécution

Une possibilité plus direct est la suivante (mais nous n'avons pas encore vu le unpacking

n_max = 30

n = 0
fibonacci_n = 1   # F_n nombre de Fibonacci de rang n
fibonacci_suivant = 1 # F_{n+1} nombre de Fibonacci de rang n+1

while n < n_max:
    print fibonacci_n,
    n = n + 1
    fibonacci_n, fibonacci_suivant = fibonacci_suivant, fibonacci_n + fibonacci_suivant
print

Visualiser l'exécution


Website design modified from Sliqua taken from OSWD