Solution Exercice 60 : code python qui génère un dictionnaire à partir d'une suite d'entiers

Exercice 60

Écrire un programme en Python qui demande à l'utilisateur de saisir dix nombres entiers de son choix et de lui renvoyer un dictionnaire dont les clés sont les entiers saisis et dont les valeurs sont 'premier' ou 'non premier' selon l'entier saisi.

Solution

# coding: utf-8
# création d'une fonction qui teste la primalité d'un nombre entier donné
def testPrim(n):
    # initialisation du nombre de diviseurs de n
    numberDivisors = 0
    # parcourir les entiers 1 2 3 ... n et sélectionner les diviseurs de n
    for i in range(1 , n + 1):
        if ( n%i == 0 ):
            numberDivisors = numberDivisors + 1
    if (numberDivisors == 2 ):
        return True
    else:
        return False
    
# création d'un dictionnaire qui va contenir les valeurs saisies au clavier
d = dict({})
for i in range(0 , 10):
    n = int(input("Type an integer : " ))
    if (testPrim(n)):
        d[n] = "prime"
    else:
        d[n] = "not prime"
print(d)

# Teste de l'algorithme
# pour les valeurs saisies : 3,  5, 4, 11, 18, 13, 9, 22, 45, 16 la sortie est  :
# {3: 'prime', 5: 'prime', 4: 'not prime', 11: 'prime', 18: 'not prime', 13: 'prime', 9: 'not prime', 22: 'not prime', 45: 'not prime', 16: 'not prime'}

 

 

Younes Derfoufi
CRMEF OUJDA

2 thoughts on “Solution Exercice 60 : code python qui génère un dictionnaire à partir d'une suite d'entiers

Leave a Reply