Aller au contenu

TD⚓︎

Exercice 1

def foo(mot):
    return len(mot) * '*'
  1. Que renvoie (retourne) l'appel foo("mot de passe") ?
  2. Modifier la fonction pour que la fonction retourne deux étoiles en plus.

Exercice 2

def foo(a, b):
    return a + b
  1. Que renvoie (retourne) l'appel foo(8, 9) ?
  2. Modifier la fonction pour que la fonction retourne le produit des paramètres.

Exercice 3

def foo(a, b):
    q = a // b
    r = a % b
    return str(a) + " = " + str(q) + " * " + str(b) + " + " + str(r)
  1. Que renvoie (retourne) l'appel foo(15, 4) ?
  2. Modifier la fonction pour que l'appel foo(15, 4) retourne "15 / 4 = 3.75".

Exercice 4

  1. Que fait la fonction suivante ?

    def foo():
        print("***")
        print("***")
        print("***")
    
  2. Que fait la fonction suivante ?

    def foo():
        res = "***\n"
        res += "***\n"
        res += "***\n"
        return res
    

Exercice 5

  1. Écrire une fonction triangle() retournant une chaine de caractères s'affichant:

    *
    **
    ***
    ****
    
  2. Écrire une fonction rectangle(lg) retournant une chaine de caractères composée de trois lignes de lg étoiles.

    Exemple:

    >>> print(rectangle(10))
    **********
    **********
    **********
    

Exercice 6

def foo(prenom):
    prenom = input("quel est votre prénom ?")
    print("Bonjour", prenom)
  1. Qu'affiche l'appel foo("Rosa") ?
  2. Kevin pense que pour que l'appel foo("Rosa") affiche Bonjour Rosa il faut modifier la fonction comme suit:

    def foo(prenom):
        prenom = "Rosa"
        print("Bonjour", prenom)
    

    Qu'en pensez-vous ?

Exercice 7

Ecrire des docstrings pour les fonctions que vous avez écrites aux exercices 1 à 4.

Exercice 8

Ecrire des doctests pour les fonctions que vous avez écrites aux exercices 1 à 4.