In der Mathematik gibt es verschiedene Methoden, um Primzahlen zu finden, von denen eine eine Methode ist, die als "Eratosthenes Sieb" bekannt ist. Dies ist ein Algorithmus, mit dem Sie alle Primzahlen bis zu einer bestimmten Zahl finden können.
Die Methode basiert auf dem Ausschlussprinzip: zuerst wird eine Liste aller Zahlen von 2 bis zu einer bestimmten Zahl erstellt, dann werden Zahlen, die ein Vielfaches von 2 sind, von der Liste ausgeschlossen, dann Zahlen, die ein Vielfaches von 3 sind, und so weiter. Die Zahlen, die nach Abschluss des Prozesses in der Liste verbleiben, sind Primzahlen.
Diese Methode hat ihren Namen nach dem altgriechischen Mathematiker Eratosthen von Kyrensky, der im 3. Jahrhundert v. Chr. lebte. Er war der erste, der diesen Algorithmus in seiner Arbeit zur Zahlentheorie vorschlug.
Eratosthenes Sieb
Das Funktionsprinzip des Eratostherstellers basiert auf dem sequentiellen Ausstreichen aller Vielfachen Zahlen, beginnend mit einer Zwei. Danach bleiben alle nicht durchgestrichenen Zahlen einfach.
Der Eratosthene-Gitteralgorithmus kann als Tabelle dargestellt werden. Zuerst müssen Sie eine Tabelle mit Zahlen von 2 bis n erstellen, wobei n die obere Grenze des Bereichs ist. Dann müssen Sie die Zahlen, beginnend mit 2, durchlaufen, indem Sie jede Zahl mit Zahlen multiplizieren, die ein Vielfaches davon sind. Danach müssen Sie den Vorgang für die nächste nicht durchgestrichene Zahl wiederholen und wiederholen, bis alle Zahlen aus dem Bereich überprüft wurden.
| Zahl | Gestrichen |
|---|---|
| 2 | |
| 3 | |
| 4 | ✔ |
| 5 | |
| 6 | ✔ |
| 7 |
Nachdem der Algorithmus abgeschlossen ist, bleiben alle nicht durchgestrichenen Zahlen einfach und wir können davon ausgehen, dass wir alle Primzahlen im angegebenen Bereich erhalten haben.
Daher ist ein eratosthenes Sieb ein effektiver Algorithmus, um Primzahlen basierend auf ihrer Multiplizität zu finden.
Definition eines Algorithmus
1. Es wird eine Liste aller Zahlen von 2 bis zur angegebenen Zahl N erstellt.
2. Beginnend mit der Zahl 2 wird sie als Primzahl markiert, und alle Vielfachen Zahlen werden aus der Liste gestrichen.
3. Gehen Sie zur nächsten unmarkierten Zahl über und wiederholen Sie Schritt 2.
4. Wiederholen Sie die Schritte 2 und 3, bis wir alle Zahlen in der Liste durchlaufen haben.
Am Ende des Algorithmus sind alle verbleibenden Zahlen in der Liste einfache Zahlen.
Der Einfachheit halber wird eine Tabellenansicht verwendet, in der Spalten Zahlen und Zeilen Algorithmusschritte darstellen. Jede Zelle in der Tabelle gibt an, ob eine Zahl als Primärzahl markiert oder aus der Liste gestrichen wird.
| Zahl | Schritt 1 | Schritt 2 | . | Letzter Schritt |
|---|---|---|---|---|
| 2 | P | P | . | P |
| 3 | P | P | . | P |
| 4 | P | N. | . | N. |
| 5 | P | P | . | P |
| . | . | . | . | . |
Wobei "P" bedeutet, dass eine Zahl als Primzahl markiert ist und "H" bedeutet, dass eine Zahl aus der Liste gestrichen wird.
Ein eratosthenes Sieb ist eine effektive Möglichkeit, Primzahlen zu finden, da es nicht erforderlich ist, jede Zahl auf Teilbarkeit zu überprüfen, sondern nur die zusammengesetzten Zahlen aus der Liste zu streichen.
Schritte des Algorithmus
Der Eratosthene-Gitteralgorithmus basiert auf der Idee, alle Primzahlen bis zu einer bestimmten Zahl zu finden. Im Folgenden sind die grundlegenden Schritte dieses Algorithmus aufgeführt:
- Erstellen Sie eine Liste von Zahlen von 2 bis N.
- Setzen Sie den Anfangswert der Variablen p auf 2.
- Markieren Sie alle Zahlen, die ein Vielfaches von p sind, als zusammengesetzt.
- Finde die erste unmarkierte Zahl in der Liste, die nach p folgt, und setze ihren Wert auf p.
- Wiederholen Sie die Schritte 3-4 für alle unmarkierten Zahlen bis N.
- Alle nicht markierten Zahlen in der Liste sind einfache Zahlen.
Der Eratosthene-Gitteralgorithmus ermöglicht es Ihnen, Primzahlen effizient bis zu einem bestimmten N-Wert zu finden. Es basiert auf dem Prinzip des Ausschlusses von zusammengesetzten Zahlen und reduziert die Anzahl der Überprüfungen bei der Suche nach Primzahlen.
Anwendungsbeispiel
Für ein anschauliches Beispiel für die Verwendung eines Eratostherstellers stellen wir uns eine Tabelle in der Größe 10x10 vor, in der wir alle Primzahlen finden möchten.
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 |
| 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 |
| 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 |
| 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 |
| 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 |
| 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 |
| 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 |
Wenn wir den Eratosthene-Gitteralgorithmus anwenden, werden wir alle Zahlen, die in Primzahlen bis zur Wurzel der größten Zahl unterteilt sind, in diesem Fall bis zu 10 durchstreichen. Es werden nur Primzahlen übrig bleiben: 2, 3, 5, 7.