# fonction de recherche dichotomique appelée dans le corps principal de l'algorithme def recherche_dichotomique(x, tableau): milieu = 0 debut = 0 fin = len(tableau) - 1 while debut <= fin: # on fait une division entière pour ne pas avoir un milieu de tableau au format float milieu = (debut + fin) // 2 # 1ère hypothèse : x est supérieur à l'élément milieu du tableau # on se positionne dans la partie supérieure du tableau par rapport à la variable milieu if tableau[milieu] < x: debut = milieu + 1 # 2ème hypothèse : x est inférieur à l'élément milieu du tableau # on se positionne dans la partie inférieure du tableau par rapport à la variable milieu elif tableau[milieu] > x: fin = milieu - 1 # x a été trouvé dans le tableau à la position milieu else: return milieu # x ne se trouve pas dans le tableau return -1 # algorithme principal tableau = [ 1, 1, 2, 3, 5, 8, 13, 21, 34 ] print (tableau) x = int(input("Saisir un entier : ")) retour = recherche_dichotomique(x, tableau) if retour != -1: print("x est présent dans le tableau à la position ", retour + 1) else: print("x ne se trouve pas dans le tableau")