Avez-vous une question? (216) 97 656 803 hajjriadh@gmail.com
Python

Exercices les boucles Python Série 02

Un cours complet pour maîtriser Exercices les boucles Python Série 02.

0 chapitres 0 QCM Accès gratuit
  1. Objectifs

    • Comprendre et savoir utiliser les boucles en Python.
  2. Exercice 01

    • Énoncé
      • Le triplet pythagoricien
        • En arithmétique, un triplet pythagoricien ou triplet de Pythagore est un triplet [katex]\mathbf{(a,b,c)}[/katex] d'entiers naturels non nuls vérifiant la relation de Pythagore : [katex]\mathbf{a^2+b^2=c^2}[/katex]. Le triplet pythagoricien le plus connu est [katex]\mathbf{(3, 4, 5)}[/katex].
        • On appelle "triplet pythagoricien " tout triplet [katex]\mathbf{(a,b,c)}[/katex] de trois entiers naturels non nuls vérifiant l'égalité de Pythagore : [katex]\mathbf{a^2+b^2=c^2}[/katex]
        • Écrire un programme python qui demande à l'utilisateur de saisir un entier n, et qui affiche tous les triplets pythagoriciens pour [katex]\mathbf{c \leq n}[/katex]. Les entiers a, b et c doivent être dans l’ordre croissant.
        • Si par exemple [katex]\mathbf{n \leq 20}[/katex], on doit afficher :
        • (3,4,5) est : 9+16=25 (6,8,10) est : 36+64=100 (5,12,13) est : 25+144=169 (9,12,15) est : 81+144=225 (8,15,17) est : 64+225=289 (12,16,20) est : 144+256=400
    • Correction
      • Essayez de faire l'exercice de votre côté avant de regarder la Solution !
  3. Exercice 02

    • Énoncé
      • Il existe deux unités pour les mesures de températures : les degrés Celsius (°C) et les degrés Fahrenheit (°F).
      • Écrire un programme qui demande à l'utilisateur de saisir une température, puis de choisir si celle-ci est en degrés Celsius ou en degrés Fahrenheit. Selon les cas, le programme devra ensuite afficher la conversion dans l’autre unité.
    • Correction
      • Essayez de faire l'exercice de votre côté avant de regarder la Solution !
  4. Exercice 03

    • Énoncé
      • Écrivez un programme qui demande à l'utilisateur de saisir un nombre n>0 [katex]\mathbf{n>0}[/katex] puis de trouver tous les facteurs du nombre donné en utilisant une boucle for.
      • Le facteur de tout nombre est un nombre entier qui divise exactement le nombre en un nombre entier sans laisser de reste. Par exemple, 2 est un facteur de 6 car 2 divise 6 exactement sans laisser de reste.
    • Correction
      • Essayez de faire l'exercice de votre côté avant de regarder la Solution !
  5. Exercice 04

    • Énoncé
      • Écrivez un programme en python, qui demande à l'utilisateur de:
        • Saisir deux nombres et qui doit trouver le plus grand diviseur commun entre ces deux nombres.
          • Exemple d'affichage
            • Données d'entrée
                Saisir nombre 1: 35 Saisir nombre 2: 60
            • Données de sortie
              • PGCD de 35 et 60 = 5
        • Vérifier si l'un ou les deux nombres saisies précédemment est (sont) premier(s)
        • Trouver les facteurs premiers du plus grand nombre des deux nombres saisies précédemment.
    • Correction
      • Essayez de faire l'exercice de votre côté avant de regarder la Solution !
  6. Exercice 05

    • Énoncé
      • Écrire un jeu dans lequel python choisit aléatoirement un nombre entre 0 et 99.
      • Ce jeu peut être décrit comme suit:
        • L'ordinateur choisit au hasard un nombre mystère
        • Le joueur propose une réponse.
        • L'ordinateur répond "le nombre à trouver est plus grand" ou "le nombre à trouver est plus petit" ou "bravo, c’est le bon nombre !"
        • Comme ce jeu est vite lassant, on introduit des variantes où l'ordinateur a le droit de mentir ou de tricher !
      • L’ordinateur ment.
        • Pour compliquer le jeu, l’ordinateur a le droit de mentir de temps en temps. Par exemple environ une fois sur quatre l’ordinateur donne la mauvaise indication "plus grand" ou "plus petit".
    • Correction
      • Essayez de faire l'exercice de votre côté avant de regarder la Solution !
  7. Exercice 06

    • Énoncé
      • Soit { ([katex]\mathbf{U_{n}}[/katex]) la suite définie sur [katex]\mathbf{\mathbb{N}}[/katex] par :
      • [katex]\left\lbrace\begin{array}{lll} \mathbf{U_{0} = 3}, \mathbf{U_{1}} = \mathbf{\frac{3}{2}}\\\ \\ \mathbf{2U_{n+2} = U_{n+1}+U_{n} \ pour\ tout \ {n \geq 0}}\\ \end{array}\right.[/katex]
        • Écrire une fonction qui prend en entrée un entier n et qui renvoie [katex]\mathbf{U_{n}}[/katex]. On proposera deux versions :
          • a. ua(n) : programmée à l’aide d’une boucle;
          • b. ub(n) : programmée de manière récursive.
        • Écrire une fonction affiche_termes(u,a,b) qui affiche les termes de la suite u passée en entrée pour les rangs allant de a à b (tous les deux inclus). On attend un affichage complet du type :
            u(0) = 3 u(1) = 1.5 u(2) = ...
        • Afficher les 15 premiers termes de la suite ([katex]U_{n}[/katex]). On doit observer la convergence vers 2.
          • En admettant que la suite ([katex]U_{n}[/katex]) converge effectivement vers 2, il doit exister un rang N à partir duquel tous les termes de la suite sont à une distance de 2 inférieure ou égale à [katex]10^{-3}[/katex] par exemple.
          • Écrire alors une fonction rang_précision(eps) qui prend en entrée une précision [katex]\mathbf{\epsilon}[/katex] et qui renvoie le rang N du premier terme de la suite tel que [katex]\left| U_{N}- 2 \right| \ n\leq \epsilon[/katex].
        • À l'aide d'une boucle, afficher le rang [katex]\mathbf{\mathbb {N}}[/katex] obtenu pour les précisions " suivantes : [katex]10^{-1}, 10^{-2}, 10^{-3}, 10^{-5}, 10^{-10}[/katex] Comment varie logiquement N lorsque " diminue?
        • Il est possible, sur cet exemple de suite ([katex]U_{n}[/katex]), de déterminer directement [katex]U_{n}[/katex] en fonction de [katex]n[/katex]. On admet qu'on obtiendrait, pour tout [katex]\mathbf{\mathbb {n\ \varepsilon \ N }}[/katex] : [katex] u_{n}\ =\ 2+ \left(-\frac{1}{2}\right)^{n}[/katex]
        • Connaissant cette expression, retrouver les résultats obtenus à la question précédente par un calcul mathématique, en résolvant l’inéquation [katex]\left| U_{N}- 2 \right| \ n\leq \epsilon[/katex], dont l’inconnue est [katex]N[/katex].
    • Correction
      • Essayez de faire l'exercice de votre côté avant de regarder la Solution !
  8. Exercice 07

    • Énoncé
      • Vérifier puis exécuter le script python suivant:
          x=input('Donner un entier=')
          y=input('Donner un autre entier=')
          print('la somme de ',x,' + ', y ,'=',x+y)
        • 01. Corriger le script pour qu’il affiche la somme de x + y
        • 02. Ajouter les instructions pour que le script affiche la multiplication de x * y
        • 03. Modifier le script pour saisir la variable op opérateur qui peut être (+ ou *),puis effectuer l’opération correspondante.
        • 04. Ajouter les cas des opérateurs (- et /)
        • 05. Ajouter la saisie d'une variable q pour demander à l’utilisateur s’il veut quitter (taper o pour quitter) sinon recommencer depuis le début.
    • Correction
      • Essayez de faire l'exercice de votre côté avant de regarder la Solution !