logo

Prototyper une fonction

Exercice 1

Voici une fonction en langage Python qui convertit un nombre binaire de 8 bits en décimale.

def bintodec(binaire):
    result=0
	for i in range (0,8):
        result+=int(binaire[i])*2**(7-i)
    return result

Rajouter un commentaire, des pré-conditions et un jeu de tests à cette fonction.

Voir une solution

Exercice 2

Ecrire une fonction de paramètres a et b qui retourne si a et b sont des entiers naturels le quotient et le reste de la division euclidienne de a par b, sinon elle renvoit -1.

Preconditions: a >= 0 et b > 0 avec a et b entiers.
Si les préconditions ne sont pas respectées, doit renvoyer -1.

def division_euclidienne(a,b):
    
	à compléter
	
    return quotient,reste

Rajouter un commentaire, des pré-conditions sous forme de if...else et un jeu de tests à cette fonction.

Voir une solution

Exercice 3

Voici une fonction en langage Python qui calcule le pgcd(a,b) avec l'algorithme des soustractions successives, malheureusement elle bugue.

def pgcd(a,b):
   while a-b != 0:
      r=a-b
      a=b
      b=r
   return a

  1. Rajouter un commentaire, des pré-conditions et un jeu de tests à cette fonction.
  2. Modifier le code afin qu'il fonctionne

Voir une solution