Inizia subitoInizia gratis

Sequenza di numeri primi

Un numero primo è un numero naturale divisibile solo per 1 o per se stesso (ad esempio 3, 7, 11, ecc.). Tuttavia, 1 non è un numero primo.

Il tuo compito è, data una lista di numeri candidati cands, filtrare solo i numeri primi in una nuova lista primes.

Prima però devi creare una funzione is_prime() che restituisca True se il numero in input \(n\) è primo oppure False in caso contrario. Per farlo, è sufficiente verificare che il numero non sia divisibile per nessun intero da 2 a \(\sqrt{n}\).

Suggerimento: potresti aver bisogno dell'operatore % che calcola il resto di una divisione (ad esempio 8 % 3 è 2).

Il modulo math è già importato.

Questo esercizio fa parte del corso

Esercitarsi con le domande di colloquio di coding in Python

Visualizza corso

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

def is_prime(n):    
    # Define the initial check
    if n < ____:
       return ____
    # Define the loop checking if a number is not prime
    for i in range(____, ____):
        if ____:
            return False
    return True
Modifica ed esegui il codice