Seite 1 von 1

Verständnisfrage zu Primzahlen-Berechnung

Verfasst: Dienstag 8. Januar 2019, 23:25
von fabfreddy
Hallo zusammen,

warum wird in dem folgenden Programm die Zahl 2 als Primzahl erkannt?

def _check_prime_sample_(n):
if n < 2:
return False
# Iterate from 2 to the number
for i in range(2, n):
if n % i == 0:
return False
return True

Müsste nicht in der unteren if-Statement 0 herauskommen? (i = 2, n = 2 -> 2 % 2 = 0 -> False)
Ich bin Anfänger und wundere mich, wieso entgegen meiner Annahme die Prüfung True ergibt.

Danke für einen Hinweis.

Gruß
fabfreddy

Re: Verständnisfrage zu Primzahlen-Berechnung

Verfasst: Dienstag 8. Januar 2019, 23:56
von __deets__
Dir ist klar, das 2 eine Primzahl ist? Ebenso wie 1?

Abgesehen davon: range, so wie von dir verwandt in der Form range(a, b) liefert alle zahlen von a an aufwärts, aber nicht b. Damit ist dein range leer, und die Schleife wird nicht durchlaufen.

Re: Verständnisfrage zu Primzahlen-Berechnung

Verfasst: Mittwoch 9. Januar 2019, 08:14
von Sirius3
@fabfreddy: würde die Schleife wirklich bis einschließlich n laufen, dann wäre keine Zahl eine Primzahl, denn n % n ist immer 0. Die führenden und abschließenden _ in _check_prime_sample_ gehören weg.

Re: Verständnisfrage zu Primzahlen-Berechnung

Verfasst: Mittwoch 9. Januar 2019, 19:46
von fabfreddy
Hallo zusammen,

danke für euer Feedback!

@ Sirius3: So ist es!... ist mir später dann auch aufgefallen, dass die Schleife den Wert n ja nicht erreicht und somit die Rechnung bei einem Input von 2 zur P 1 % 2 == 0 führt und somit den Wert True zurückgibt.
Das ist übrigens eine Musterlösung aus einem Online Kurs, die ich hier rein kopiert habe. Ich würde bei Funktionen auch nicht Unterstriche voran- oder nachstellen.

Und beim nächsten Mal achte ich darauf, dass die Einrückungen nicht verloren gehen... wie mir gerade auffällt.

VG

Re: Verständnisfrage zu Primzahlen-Berechnung

Verfasst: Donnerstag 10. Januar 2019, 12:53
von noisefloor
Hallo,

da es noch keiner gesagt hat: 1 ist keine Primzahl.

Gruß, noisefloor

Re: Verständnisfrage zu Primzahlen-Berechnung

Verfasst: Freitag 11. Januar 2019, 21:43
von fabfreddy
@noisefloor: *lach* ... jetzt haben alle etwas dazugelernt :lol: