Eine zufällige Primzahl erstellen

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Sunny
Beiträge: 290
Registriert: 19.02.2009 06:02

Eine zufällige Primzahl erstellen

Beitrag von Sunny »

Hi @all,
ich wollte mal fragen, wie ich es in PB am besten anstelle, eine zufällige Primzahl zu generieren.

MfG Sunny
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Eine zufällige Primzahl erstellen

Beitrag von RSBasic »

Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Derren
Beiträge: 558
Registriert: 23.07.2011 02:08

Re: Eine zufällige Primzahl erstellen

Beitrag von Derren »

Kommt darauf an ob du wirklich eine generieren willst (also einen Algo suchst), oder ob du einfach eine haben willst.
Für letzteres wäre es sicher am einfachsten eine Liste von Primzahlen zu suchen (gibt's bestimmt irgendwo zum Herunterladen) und diese in ein Array zu packen auf welches du mit Random() zugreifst.
Signatur und so
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Eine zufällige Primzahl erstellen

Beitrag von STARGÅTE »

Das mit dem Array wäre wohl auch die sicherste Methode um auch die Gleichverteilung sicherzustellen, sodass zB RandomPrime(10) die zahlen: 2, 3, 5, 7 zu jeweils 25% Wahrscheinlichkeit ausgibt.

Wenn man also als Maximum eine Long nimmt, braucht man
Demnach brauch mal also ein Array mit π(2^31) = 105097565 Feldern, was also gleich mal schlappe 400MB frisst^^

Mit Random() zu arbeiten und dann zu Prüfen ob es eine ist, kann auch ins Auge gehen.

Und NextPrime nützt auch nicht sehr viel, weil die Anzahl der Primzahlen bis Max nicht bekannt ist, sodass man auch nicht nicht "zufällig" n-Schritte gehen kann, ohne ein ungleichgewicht zu erzeugen.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Antworten