Un peu d'arithmétique

Nombres parfaits

Question 1

Écrire le code de la fonction somme_diviseurs.

Rappel : a % b est le reste de la division euclidienne de a par b.

In [ ]:
def somme_diviseurs(n):
    """ Retourne la somme des diviseurs de n
    """
    ### À COMPLÉTER

somme_diviseurs(15)

Question 2

Un nombre entier est parfait s'il est égal à la somme de ses diviseurs propres (diviseurs distincts de lui-même).

Écrire le code de la fonction est_parfait.

$28=1+2+4+7+14$ est un exemple de nombre parfait.

In [ ]:
def est_parfait(n):
    """ Retourne `True` si n est un entier parfait,
        retourne `False` sinon.
    """
    # À COMPLÉTER
    
est_parfait(28)

Question 3

Quels sont les nombres parfaits inférieurs à $100000$.

In [ ]:
 

Nombres premiers

Question 4

Écrire le code de la fonction est_premier.

In [ ]:
def est_premier(n):
    """ Retourne `True` si n est un nombre premier,
        retourne `False` sinon.
    """
    # À COMPLÉTER
    
print(est_premier(1))
print(est_premier(2))
print(est_premier(17))
print(est_premier(100))

Question 5

Écrire le code de la fonction premiers.

  • L'instruction L = [] permet de créer une liste vide.

  • L'instruction L.append(x) permet d'ajouter la valeur x à la fin de la liste L.

In [ ]:
def premiers(n):
    """ Retourne la liste des nombres premiers inférieurs ou égaux à n.
    """
    # À COMPLÉTER

L = premiers(100)
print(L)

Question 6

Quelle est la somme des nombres premiers inférieurs strictement à $1\,000\,000$ ?

In [ ]: