Exercices sur les fonctions

Exercices sur les fonctions#

Exercice 10

def conversion(duree_mn):
    heures = duree_mn // 60
    minutes = duree_mn % 60
    return heures, minutes
    1. Donner les arguments de la fonction conversion.

    2. Préciser le type des arguments.

    1. Donner les arguments de retour de la fonction.

    2. Préciser le type des arguments de retour.

  1. Que renvoie l’appel conversion(60) ?

Exercice 11

def positif(val):
    return int((-1)**(int(val < 0) - 1))*val
    
valeur=positif(-1)

Que vaut la variable valeur après exécution de ce code ?

Exercice 12

def moy(x,y):
    return (x + y) / 2
moyenne = moy(3,5)
  1. Préciser le type des valeurs d’entrée et de sortie de la fonction moy.

  2. Que référence la variable moyenne après l’exécution de ces lignes ?

Exercice 13

def carre(val):
    return val * val
def func(val):
    val = val + 1
    return val
valeur = carre(func(5))

Que référence la variable valeur ?

Exercice 14

def operation_1(a, b, c):
    return a + b * c
def operation_2(a, b, c):
    return a * 2 + b
def operation_3(a, b, c):
    return c * 3 - b
i = 5
j = 1
k = 2
resultat_1 = operation_1(i, j, k) + operation_3(k, i, j)
  1. Que vaut resultat_2 = resultat_1 + operation_2(k, j, i) ?

  2. Que vaut resultat_2 = resultat_1 + operation_2(k, i, j) ?

Exercice 15

Combien d’arguments ont été renseignés dans l’appel de fonction somme(12.2,5.4,5.5) ?

Exercice 16

On souhaite connaître le comportement de l’expression suivante isinstance('101', str)

Indiquer la bonne réponse :

  • help()

  • help(isinstance)

  • help(isinstance())

  • help(isinstance('101', str))

Exercice 17

Dans le cadre de la programmation d’un jeu de rôle, on souhaite imposer à l’utilisateur d’un fonction lancer_dé de lui passer comme entrée un entier n entre 4 et 20.

Cette fonction lancer_dé renverra un nombre au hasard entre 1 et n.

  1. Donner l’interface de la fonction.

    1. Décrire la précondition en utilisant les comparaisons mathématiques.

    2. Écrire deux instructions utilisant le mot clef assert pour imposer le respect de ces conditions.

  2. Écrire la documentation de la fonction.

On ne demande pas ici d’écrire la fonction.

Exercice 18

Indiquer si la syntaxe des fonctions suivantes et correcte et si oui, ce qu’elle renvoie sur un appel valide.

  1. fonction = def ma_fonction(n):
        return n + 1
    
  2. ma_fonction(n):
        return n + 1
    
  3. def ma_fonction(n)
        return n + 1
    
  4. def ma_fonction(n):
        n + 1
    
  5. def ma_fonction(n: int):
        return n + 1
    
  6. def ma_fonction(n -> int):
        return n + 1
    

Exercice 19

On définit deux fonctions :

def f(x):
    y = 2*x + 1
    return y

def calcul(x):
    y = x - 1
    return f(y)

Quelle est la valeur renvoyée par l’appel calcul(5) ?