Heim  >  Artikel  >  Backend-Entwicklung  >  So drucken Sie Primzahlen in Python korrekt: Beheben eines Problems mit ungerader Ausgabe

So drucken Sie Primzahlen in Python korrekt: Beheben eines Problems mit ungerader Ausgabe

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-21 12:38:02925Durchsuche

How to Correctly Print Prime Numbers in Python: Resolving an Issue with Odd Output

Primzahlen in Python drucken

Beim Versuch, Primzahlen von 1 bis 100 aufzulisten, stieß ein Python-Benutzer auf ein Problem bei der Ausgabe ungerade Zahlen statt Primzahlen angezeigt. Um dieses Problem anzugehen, werden wir uns mit dem Problem befassen und eine überarbeitete Lösung bereitstellen.

Der ursprüngliche Code, wie unten gezeigt, iteriert über Zahlen von 1 bis 100 und prüft für jede Zahl, ob sie teilbar ist durch eine beliebige Zahl von 2 zu sich selbst:

<code class="python">for num in range(1, 101):
    for i in range(2, num):
        if num % i == 0:
            break
        else:
            print(num)
            break</code>

Das Problem bei diesem Ansatz liegt in den Beendigungskriterien der verschachtelten Schleife. Sobald festgestellt wird, dass eine Zahl durch einen Faktor i teilbar ist, wird die innere Schleife unterbrochen und die print(num)-Anweisung ausgeführt. Allerdings beginnt die äußere Schleife dann, dieselbe Zahl mit dem nächsten Wert von i zu prüfen.

Um dieses Problem zu lösen, müssen wir die Schleife aktualisieren, um die Teilbarkeit durch alle Zahlen von 2 bis zur Quadratwurzel von num zu prüfen. Wenn keiner dieser Teiler n teilt, handelt es sich wahrscheinlich um eine Primzahl. Der korrigierte Code wäre:

<code class="python">for num in range(2, 101):
    prime = True
    for i in range(2, int(num**0.5) + 1):
        if num % i == 0:
            prime = False
            break
    if prime:
        print(num)</code>

Diese Lösung erkennt Primzahlen effizient, indem sie iterativ die Teilbarkeit durch kleinere Faktoren überprüft. Dadurch werden in der Ausgabe die Primzahlen von 1 bis 100 genau angezeigt.

Das obige ist der detaillierte Inhalt vonSo drucken Sie Primzahlen in Python korrekt: Beheben eines Problems mit ungerader Ausgabe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn