Une première synthèse, et des exercices

Échauffement 1 – papier, stylo

  • Écrire une fonction delta admettant trois paramètres a, non nul, b, c et qui renvoie \Delta=b^2-4ac.
  • Écrire une fonction racines admettant aussi trois paramètres a, non nul, b, c et qui renvoie, suivant la valeur de delta(a, b, c) :
    • « pas de racines » s’il est strictement négatif,
    • le résultat de -\dfrac{b}{2a} s’il est nul,
    • les résultats de \dfrac{-b-\sqrt{\Delta}}{2a} et \dfrac{-b+\sqrt{\Delta}}{2a} sinon.
  •  On utilisera la fonction racine carrée :
    from math import sqrt
  • Corrigé en cliquant ci-dessous sur « lire la suite ».

Échauffement 2 – papier, stylo

Programmer en python une fonction table_de() qui :

  • accepte deux arguments, nombre et multiplicateur_max,
  • qui affiche la table du nombre en question :
    • nombre multiplié par 1,
    • puis par deux,
    • jusqu’à multiplicateur_max fois nombre.
  • on peut l’appeler ainsi
    table(6,3)
    6 x 1 = 6
    6 x 2 = 12
    6 x 3 = 18
    >>>

    ou ainsi, avec un seul paramètre :

    table(2)
    2 x 1 = 2
    2 x 2 = 4
    2 x 3 = 6
    2 x 4 = 8
    2 x 5 = 10
    2 x 6 = 12
    2 x 7 = 14
    2 x 8 = 16
    2 x 9 = 18
    2 x 10 = 20
    >>>

Un corrigé figure dans le cours ci-dessous.


Cours – première synthèse :


Exercices :

A faire dans l’ordre. Pendant cette séance, le prof répond aux questions sur le jeu de dés en turtle pour lequel un squelette figure ici.

  • Écrire une fonction prix_ttc(prix_ht, quantite, taux_tva = 20) qui
    • attend en argument :
      • le prix « hors taxes » d’une unité (exemple 12 €)
      • la quantité (exemple 5 unités)
      • le taux de tva (exemple 20%, c’est la valeur par défaut),
    • renvoie le prix « toutes taxes comprises », par exemple ici 72 €
      5 \times 12 \times \left(1+\dfrac{20}{100}\right)=72
  • Écrire une fonction saisie_commande() qui
    • demande à l’utilisateur
      • le prix « hors taxes » d’une unité (exemple 12 €)
      • la quantité (exemple 5 unités)
      • le taux de tva (exemple 20%, c’est la valeur par défaut),
    •  appelle alors la fonction fonction prix_ttc pour afficher le prix « toutes taxes comprises »
  • Écrire une fonction somme_des_entiers_jusqu_a(n) qui
    • attend en argument un entier positif n,
    • renvoie la somme des entiers de 1 jusqu’à n.
    • Par exemple:
      • somme_des_entiers_jusqu_a(3) renvoie 6 car 1 + 2 + 3 = 6
      • somme_des_entiers_jusqu_a(100) renvoie 5050.
      • somme_des_entiers_jusqu_a(1) renvoie 1.
      • somme_des_entiers_jusqu_a(0) renvoie 0.
  • Écrire une fonction pgcd(a, b) qui
    • attend en argument deux entiers positifs a et b,
    • renvoie le Plus Grand Commun Diviseur de ces entiers
    • Par exemple:
      • pgcd(12, 18) renvoie 6.
      • pgcd(100, 75) renvoie 25.
      • pgcd(1, 42) renvoie 1.
      • pgcd(42, 84) renvoie 42.
  • Écrire une fonction est_premier(n) qui
    • attend en argument un entier positif n,
    • renvoie un booléen :
      • True si n  est premier,
      • False sinon
  • Écrire une fonction nombres_premiers_plus_petits_que(n) qui
    • attend en argument un entier positif n,
    • renvoie ou affiche la liste des nombres premiers plus petits que n.

Corrigé de l’échauffement 2

from math import sqrt
 
def delta(a, b, c) :
    """
        attend trois reels a, b, c avec a non nul
        calcule le discriminant et le renvoie
    """
    return b ** 2 - 4 * a * c
 
def racines(a, b, c) :
    """
        attend a, b, c , a non nul
        teste suivant la valeur du discriminant
        s'il y a des racines
        et les renvoie alors
    """
    d = delta (a, b, c) # on stocke la valeur du discriminant
    if d < 0 :
        return "Pas de racines"
    elif d == 0 :
        return -b/(2*a)
    else :
        return (-b-sqrt(d))/(2*a), (-b+sqrt(d))/(2*a)
 
def test() :
    """
        pour tester les trois cas !
    """
    for b in range(1,4) : # b de 1 a 3
        print("Delta fait", delta(1, b, 1), "et donc :")
        print(racines(1, b, 1))
 
test()

test()[/code]

2 réflexions au sujet de « Une première synthèse, et des exercices »

  1. Bonsoir monsieur,
    Je ne sais pas si le problème vient de mon ordi ou du programme mais je voulais vous informer que le corriger de l’échauffement 2 papier, stylo ne fonctionne pas.

    • Bonjour,

      Le problème vient clairement du copier/coller dans wordpress.

      Une bonne version

      from math import sqrt
       
      def delta(a, b, c) :
          """
              attend trois reels a, b, c avec a non nul
              calcule le discriminant et le renvoie
          """
          return b ** 2 - 4 * a * c
       
      def racines(a, b, c) :
          """
              attend a, b, c , a non nul
              teste suivant la valeur du discriminant
              s'il y a des racines
              et les renvoie alors
          """
          d = delta (a, b, c) # on stocke la valeur du discriminant
          if d < 0 :
              return "Pas de racines"
          elif d == 0 :
              return -b/(2*a)
          else :
              return (-b-sqrt(d))/(2*a), (-b+sqrt(d))/(2*a)
       
      def test() :
          """
              pour tester les trois cas !
          """
          for b in range(1,4) : # b de 1 a 3
              print("Delta fait", delta(1, b, 1), "et donc :")
              print(racines(1, b, 1))
       
      test()

      Merci !

N'hésitez-pas à poser une question, ou faire avancer le schmilblick

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l’aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.