def chercher(tab, n, i, j): if i < 0 or j >= len(tab) or i > j : return None else : m = (i + j) // 2 if tab[m] < n: return chercher (tab, n, m+1, j) elif tab[m] > n: return chercher (tab, n, i, m-1) else: return m assert chercher([1,5,6,6,9,12] ,7,0,10) is None assert chercher([1,5,6,6,9,12] ,7,0,5) is None assert chercher([1,5,6,6,9,12] ,9,0,5) == 4 assert chercher([1,5,6,6,9,12] ,6,0,5) == 2