Seite 1 von 1

Primzahlen bis 192 ausgeben

Verfasst: Freitag 19. November 2021, 00:20
von rr11
Hallo,

ich fange gerade neu mit Python an und habe eine Liste mit den Werten 2 und 3. In diese Liste möchte ich alle weiteren Primzahlen bis einschließlich 191 einfügen.
Dazu habe ich diesen Code geschrieben:

>>> primelist = [2,3]
>>> for n in range (4,192):
for i in range (2,n):
if n%i == 0:
break
else:
primelist.append(n)


>>> primelist = set(primelist)

In meine Liste werden aber auch nicht-Primzahlen eingefügt und ich weiß nicht woran das liegt bzw. an welcher Stelle der Fehler liegt. Habt ihr eine Idee, was ich falsch gemacht habe?

Liebe Grüße

Re: Primzahlen bis 192 ausgeben

Verfasst: Freitag 19. November 2021, 11:07
von Sirius3
Warum wandelst Du die Liste zum Schluß in ein Set um? Wenn Du Dir das genauer anschaust, ist das schon ein erster Hinweis, was falsch läuft.

Übrigens ein schönes Beispiel, warum Typen in Variablennamen nichts verloren haben: `primelist` ist gar keine Liste mehr. Besserer Name wäre `primes`.

Re: Primzahlen bis 192 ausgeben

Verfasst: Freitag 19. November 2021, 12:29
von __blackjack__
@rr11: Geh die Schleife einfach mal Schritt für Schritt durch, überlege Dir was Du erwartest, und füge `print()`-Anweisungen ein um Deine Erwartungen zu überprüfen.