Aller au contenu

TP⚓︎

Zone de rendu : ici

Exercice 1 : Pyramide

  1. Écrire une fonction affiche_pyramide1(nb) qui affiche un triangle d'étoiles d'une hauteur nb. Doctest :

    >>> affiche_pyramide1(5)
    *
    **
    ***
    ****
    *****
    

  2. Écrivez une fonction affiche_pyramide2(nb) qui affiche une ligne oblique d'une hauteur nb. Doctest :

    >>> affiche_pyramide2(5)
    *
     *
      *
       *
        *
    

  3. Écrire une fonction affiche_pyramide3(nb) qui affiche un triangle d'étoiles d'une hauteur nb dont les lignes comportent un nombre impair d'étoiles. Doctest :
    >>> affiche_pyramide3(5)
    *
    ***
    *****
    *******
    *********
    

Exercice 2 : Maximum et minimum d'une suite d'entiers

On cherche à déterminer la valeur maximale et la valeur minimale d'une suite d'entiers saisie au clavier par l'utilisateur.

  1. Écrivez un programme qui calcule et affiche la valeur maximale d'une suite de quatre entiers saisis au clavier par l'utilisateur.

  2. On ne prend maintenant en compte que des suites d'entiers positifs. On veut que l'utilisateur puisse saisir autant d'entiers positifs qu'il le souhaite. L'utilisateur signale que la saisie est terminée en entrant un entier strictement négatif. Le programme affiche alors la valeur maximale de la suite d'entiers lue.

    Dans un premier temps, on suppose que l'utilisateur entre toujours au moins un entier positif avant de terminer la saisie.

  3. Modifiez le programme pour qu'il affiche également la valeur minimale de la suite.

  4. Modifiez le programme pour qu'il affiche le message la suite d'entiers saisie est vide si l'utilisateur n'entre pas d'entier positif avant de terminer la saisie.

Exercice 3 : Pari

La fonction randint(a, b) du module random renvoie un entier compris entre a et b (inclus). Par exemple l'instruction n = randint(10, 15) permet d'affecter à la variable n un nombre entier aléatoire compris entre 10 et 15 inclus.

  1. Écrivez une fonction jusqua6() qui simule le lancer d'un dé à six faces jusqu'à obtenir un 6 et retourne le nombre de coups utilisés (sans l'afficher).

  2. Écrivez une fonction experience() qui effectue cette expérience 10 fois de suite, calcule et retourne le nombre moyen de coups utilisés pour tirer un six.

  3. Modifiez votre fonction précédente pour que le nombre de simulations soit choisi par l'utilisateur à l'aide d'un paramètre nb. Par exemple, si l'utilisateur saisit experience(20), la fonction doit retourner la moyenne du nombre de lancers nécessaires sur 20 expériences.

  4. \(\bigstar\) Modifiez votre fonction pour calculer et retourner cette moyenne pour chaque résultat possible à atteindre sur le dé (de 1 à 6)

  5. \(\bigstar\) Modifiez votre fonction pour calculer et retourner cette moyenne pour chaque résultat possible à atteindre sur deux dés (de 2 à 12).
  6. \(\bigstar\) Modifiez votre fonction pour calculer et retourner cette moyenne pour chaque résultat possible sur k dés, k étant choisi par l'utilisateur.