Ich bin neu in der Programmierung und ich habe ein Problem, während ich versuche, ein Programm zu schreiben, um die Primzahl herauszufinden. Hier ist mein Code: „. Ihre Funktion auf is_prime fehlschlägt (3) Es gibt keine, wenn es sollte return true“Warum funktioniert meine Primzahlfunktion nicht?
def is_prime(x):
if x < 2:
return False
elif x == 2:
return True
else:
for n in range (2,x-1):
if x % n == 0:
return False
else:
return True
ich einen Fehler erhalten unter Angabe
Kann jemand bitte den Fehler in diesem Code erklären?
Vielen Dank!
Ihre Schleife gibt in der ersten Iteration immer "True" oder "False" zurück (und nichts, wenn keine Iterationen vorhanden sind). Sie sollten nur "True" zurückgeben, wenn die * ganze Schleife * beendet ist, ohne einen Faktor zu finden. – khelwood