5.6. Exercices

5.6.1. Multiple de

Écrivez une fonction qui détermine si un entier passé en paramètre est multiple d’un autre entier, également passé en paramètre.

5.6.2. Équation du second degré

Écrivez une fonction qui calcule les solutions, si elles existent, de l’équation \(ax^2+bx+c=0\). La fonction recevra les valeurs de \(a\), \(b\) et \(c\) en paramètre et renverra les solutions dans une liste.

Utilisez cette fonction pout trouver et afficher les solutions de l’équation \(x^2+3x+2=0\).

5.6.3. Tables de multiplication (à l’aide de fonctions)

Écrivez une fonction qui affiche une table de multiplication pour une base et une valeur limite passés en paramètre. Utilisez cette fonction pour afficher les tables de multiplication de 1 jusqu’à 12.

5.6.4. PGCD

La fonction pgcd() calcule le plus grand commun diviseur entre deux entiers positifs. On peut calculer le PGCD à l’aide de l’algorithme d’Euclide de la manière suivante, avec deux entiers positifs m et n tels que m > n ≥ 0 :

  • si n est nul, alors l’algorithme termine et rend la valeur m ;

  • sinon, l’algorithme calcule le reste r de la division euclidienne de m par n (r = m % n), puis recommence avec m = n et n = r.

Écrivez la fonction pgcd().

5.6.5. PGCD récursif

La fonction pgcd() calcule le plus grand commun diviseur entre deux entiers positifs. Si on l’écrit souvent de manière itérative avec une boucle, on peut aussi l’exprimer sous forme récursive. En effet, pour m et n deux entiers positifs, on a pgcd(m, n) = pgcd(n, m % n). On notera aussi que, si m est divisible par n, alors le PGCD est n.

Écrivez la fonction pgcd() de manière récursive. On fera l’hypothèse que, lors de l’appel initial à la fonction, m et n sont positifs.