Première > Numérique et sciences informatiques > Langages et programmation > Stage - Corpus d'instructions élémentaires

STAGE - CORPUS D'INSTRUCTIONS ÉLÉMENTAIRES

Corpus d'instructions élémentaires



L'énoncé

Cet exercice a pour but de définir des fonctions de manipulations d'entiers. Pour chacune de vos fonctions vous écrirez en commentaire le type des paramètres et de la valeur retournée.

Pour tester vos fonctions, vous utiliserez la fonctions assert. Par exemple :

assert (1+1) == 2   #renvoie vrai, le programme peut continuer
assert (1+2) == 2   #renvoie faux, le programme s'arrête et renvoie une erreur d'assertion

 


  • Question 1

    Ecrire une fonction absolue(x) qui renvoie la valeur absolue de x. Proposez un jeu de test comprenant au moins trois test. Par exemple :

    >>> absolue(0)
    0
    >>> absolue(1)
    1
    >>> absolue(-1)
    1
  • Question 2

    Ecrire une fonction addition_pos(a,b) qui renvoie la somme de a et b tels que a et b sont positifs. Proposez un jeu de test comprenant au moins trois tests. Par exemple :

    >>> addition_pos(0, 1)
    1
    >>> addition_pos(11)
    2
    >>> addition_pos(1, -1)
    0
  • Question 3

    Ecrire une fonction fact(n) qui renvoie la factorielle de n. Proposez un jeu de test comprenant au moins trois tests. Par exemple :

    >>> fact(0)
    1
    >>> fact(1)
    1
    >>> fact(5)
    120

    Quelle hypothèse peut-on faire sur n ?

  • Question 4

    Ecrire une fonction factSuperieure(a,b) qui renvoie True si la factorielle de a est strictement supérieur à b et False sinon. Proposez un jeu de test comprenant au moins trois tests. Par exemple :

    >>> factSuperieure(0, 1)
    False
    >>> factSuperieure(36)
    False
    >>> factSuperieure(4, 23)
    True
  • Question 5

    Soit la fonction «mystère» f ci-dessous:

    def f(x,y):
    """
    ? * ? -> ? """
    # s : ?
    s = 0
    # c : ?
    c = 0
    while factSuperieure(x,s):
    s += addition_pos(x,y)
    c += 1
    return c

    Compléter cette définition en donnant la signature de la fonction ainsi que les type à déclarer pour les variables s et c.

    Selon les principes vus, effectuer une simulation de boucle correspondant à l'évaluation :

    f(3,-1)

    Quelle est la valeur retournée par cette application ?

La correction et les astuces de cet exercice t'intéressent ?

Accède librement à l'ensemble des contenus, aux astuces et aux corrections des exercices en t'abonnant sur Les Bons Profs. Clique ici pour démarrer l'abonnement.