Ein Programm, das bestimmt, ob eine in Python eingegebene Zahl eine Primzahl ist

Einführung

Dies ist ein "Programm, das bestimmt, ob die Eingabe-Ganzzahl n eine Primzahl oder eine zusammengesetzte Zahl ist", das ich nach dem Studium von Python und dem Erlernen der grundlegenden Syntax erstellt habe. Ich schreibe es auch als mein eigenes Tagebuch. Ich denke, es gibt noch viele Punkte, die noch erreicht werden müssen, aber ich würde mich über jeden Rat freuen.

Programmprinzip

Die Methode zur Bestimmung der Primzahl dieses Mal basierte auf der Tatsache, dass "für die Eingabe n, wenn der Bruchteil von n keine Primzahl bis zu √n ist, es eine Primzahl ist". Siehe unten für einen detaillierten Beweis. [Beweis, dass n eine Primzahl ist, wenn die natürliche Zahl n nicht durch alle Primzahlen kleiner oder gleich √n teilbar ist](https://cartman0.hatenablog.com/entry/2017/10/23/%E8%87%AA % E7% 84% B6% E6% 95% B0n% E3% 81% 8C% E2% 88% 9An% E4% BB% A5% E4% B8% 8B% E3% 81% AE% E3% 81% 99% E3 % 81% B9% E3% 81% A6% E3% 81% AE% E7% B4% A0% E6% 95% B0% E3% 81% A7% E5% 89% B2% E3% 82% 8A% E5% 88 % 87% E3% 82% 8C% E3% 81% AA% E3% 81% 91% E3% 82% 8C)

Aktuelles Programm

import math
from sympy import primerange
n = int(input("Geben Sie die Nummer ein, die Sie überprüfen möchten, ob es sich um eine Primzahl handelt.>> "))
num = int(math.sqrt(n)) + 1
primlist = list(primerange(2,num)) #1

for i in primlist: #2
    if n % i == 0: #3
        print("Die Anzahl der Verbundwerkstoffe.")
        break
    elif i == primlist[-1] :
        print("Es ist eine Primzahl.")

Rauer Fluss

  1. Erstellen Sie eine Primzahlenliste mit Zahlen bis zu √n.
  2. Teilen Sie n durch die Primzahlenliste.
  3. Wenn es teilbar ist, wird die Meldung "Zusammengesetzte Nummer" angezeigt. Wenn Sie das Ende der Primzahlenliste erreicht haben, wird "Es ist eine Primzahl" angezeigt.

Was machst du eigentlich?

  1. ist die Nummer 1 und hat mithilfe von SymPys primerange eine Primzahlenliste erstellt.
  2. ist # 2, die die for-Syntax verwendet, um Zeichen aus der Primzahlenliste zu extrahieren.
  3. ist # 3, und es wird anhand der if-Syntax beurteilt, ob der ** Rest ** von n geteilt durch eine Primzahl 0 ist oder nicht.

Reflexionen

Ich habe zum ersten Mal ein Primzahlurteil abgegeben, bin aber persönlich mit etwas zufrieden, das funktioniert. Wenn jedoch n größer wird (mehr als 7 Stellen), wird die Berechnungsgeschwindigkeit langsamer, daher möchte ich sie irgendwie verbessern. Wenn Sie darüber nachdenken, mussten Sie keine Mathematik verwenden, daher möchte ich das Problem beheben. Dies ist mein erstes selbst gemachtes Programm, also lasse ich es dieses Mal als Denkmal. Ich bin der Meinung, dass es mit diesem Programm möglich ist, Primfaktoren zu zerlegen, daher möchte ich es ändern. Vielen Dank für das Lesen bis zum Ende.

Recommended Posts

Ein Programm, das bestimmt, ob eine in Python eingegebene Zahl eine Primzahl ist
Beurteilen Sie, ob es sich um eine Primzahl handelt [Python]
Ein Programm, das automatisch feststellt, ob es sich um eine Animation oder ein Foto handelt, wenn Sie das Bild einer Person eingeben [Python]
Primzahl 2 in Python
Ein Programm, das doppelte Anweisungen in Python entfernt
Überprüfen Sie, ob die Zeichenfolge eine Zahl in Python ist
[Python] Ein Programm, das die Anzahl der Täler zählt
[Python] Ein Programm, das die kürzeste Anzahl von Schritten in einem Spiel findet, das Wolken überquert
Python-Programm von "Buch, das schwieriges Programmieren leicht lehrt"
Ein Allzweckprogramm, das Linux-Befehlszeichenfolgen mit Python formatiert
Ich habe versucht, "ein Programm, das doppelte Anweisungen in Python entfernt"
Unendlicher Primgenerator in Python3
Primzahlgenerator von Python
Beim Schreiben eines Programms in Python
Spielen Sie Sounds in Python ab, vorausgesetzt, die Tastatur ist eine Klaviertastatur
[Python] Ausführungszeit, wenn eine Funktion in einen Wörterbuchwert eingegeben wird
Ich habe ein Ausgabeprogramm für Primzahlentabellen in verschiedenen Sprachen erstellt
Ein Skript, das 0, 1 an die erste Python-Primzahl zurückgibt
Was in datetime neu ist, ist in Python 3 etwas nützlicher
[Python] Ein Programm, das Treppen mit # erstellt
Ich habe ein Pay-Management-Programm in Python erstellt!
Projekt Euler # 7 "1000 1. Primzahl" in Python
Schreiben Sie ein Caesar-Verschlüsselungsprogramm in Python
Hash in Perl ist ein Wörterbuch in Python
Ein Programm, das Python zum Abspielen von Junk verwendet
[Python] Ein Programm, das die Partitur rundet
[Python] Ein Programm, das die Anzahl der Schokoladensegmente berechnet, die die Bedingungen erfüllen
[Python] Ein Programm, das die Anzahl der gepaarten Socken berechnet
Ein Memo, das ich schnell in Python geschrieben habe
Primzahlaufzählung und Primzahlbeurteilung in Python
Primfaktor-Zerlegung ver.1 der in Python eingegebenen Ganzzahlen
Einfache Pub / Sub-Programmhinweise in Python
Ich habe ein Caesar-Kryptografieprogramm in Python erstellt.
[Anfänger] Was passiert, wenn ich ein Programm schreibe, das in Python auf PHP läuft?
[Python] Ein Programm, das die Anzahl der Aktualisierungen der höchsten und niedrigsten Datensätze berechnet
Python-Programm ist langsam! Ich möchte beschleunigen! In einem solchen Fall ...
Schreiben Sie ein super einfaches molekulardynamisches Programm in Python
Empfangen Sie Wörterbuchdaten von Python-Programmen mit AppleScript
Versuchen Sie, Python mit pybind11 in ein C ++ - Programm einzubetten
Hello World mit einem einfachen Webserver, der WSGI (Web Server Gateway Interface) in Python folgt
Suchen Sie den Teil 575 aus Wikipedia in Python
Was ist in dieser Variablen (wenn das Python-Skript ausgeführt wird)?
Erstellen Sie in Python einen Dekorator, der Argumente dynamisch akzeptiert. Erstellen Sie einen Dekorator
Shell-Programm, das in Vielfachen von 3 aho wird
Es gibt ein Muster, das das Programm bei Verwendung von Python-Threading nicht gestoppt hat
Primzahl in Python
[Python] Ein Programm, das die Positionen von Kängurus vergleicht.
Python-Programm, das ical-Daten in Text konvertiert
MALSS (Einführung), ein Tool, das maschinelles Lernen in Python unterstützt
Ein Programm, das die für iOS-App-Symbole in Python erforderliche Bildgröße automatisch ändert
[Python] Programmieren, um die Nummer von a in einer Zeichenfolge zu finden, die eine bestimmte Anzahl von Malen wiederholt.
[Python] Ein Programm, um die Anzahl der Äpfel und Orangen zu ermitteln, die geerntet werden können
Python-Programm, das täglich Tweets mit bestimmten Schlüsselwörtern sammelt und in CSV speichert
So testen Sie, ob die Ausnahme in Python unittest ausgelöst wird
Eine Funktion, die iterable in Python in N Teile unterteilt
Ein Programm, das bestimmte Zeichen aus dem eingegebenen Text entfernt
Durchlaufen Sie einen Generator, der einen Datumsiterator in Python zurückgibt