Comment calculer les diviseurs d'un nombre entier en Python

Le programme suivant calcule et affiche l'ensemble des diviseurs positifs d'un entier donné.

Code

# This function returns a list containing all the factors of a ginven parameters n
def getFactors(n):
    # Create an empty list for factors
    factors=[];

    # Loop over all factors
    for i in range(1, n + 1):
        if n % i == 0:
            factors.append(i)

    # Return the list of factors
    return factors

# Call the function with a given value
print (getFactors(256))

Voici comment le programme ci-dessus fonctionne:

Sortie

[1, 2, 4, 8, 16, 32, 64, 128, 256]

Nombre premier

Il devient facile de tester si un entier est un nombre premier :

if len(getFactors(42))==2:
    print ('Nombre premier')
else:
    print ('Pas un nombre premier')

Voir aussi


Dernière mise à jour : 13/04/2019