Exercice : Découpage en fonctions

★★★ Challenge

En 1772, le mathématicien Leonhard Euler s'intéresse aux formules quadratiques générant des nombres premiers. On considère le programme Python modulaire suivant, où la fonction diviseurs(val) utilise une liste par compréhension pour recenser tous les diviseurs d'un entier :

def diviseurs(val):
    return [d for d in range(1, val + 1) if val % d == 0]

def est_premier(val):
    if val < 2:
        return False
    return len(diviseurs(val)) == 2

def polynome(n):
    return n**2 + n + 17

def premier_contre_exemple():
    n = 0
    while est_premier(polynome(n)):
        n = n + 1
    return n

Déterminer la valeur entière renvoyée par la fonction premier_contre_exemple().