[Deutsch] Darf die Funktion/Methode randomSeed() im code öfters aufgerufen werde

Meine Frage Lautet:

Darf randomSeed() im code öfters aufgerufen werden also z. B.: im loop() teil?

Grüße MM

Aber klar doch!

Es gibt sogar Fälle, wo das sinnvoll ist.
Naja...

Ok; danke für die mega schnelle Antwort :slight_smile:

Hi

Man 'darf' die Funktion so oft aufrufen, wie man will - aber Sinn sehe ich Da Keinen!

Mit randomSeed(...) wird der START-Wert der Zufallsfolge gesetzt.
Bei einem Seed vom analog-In bekomme ich so einen von 1024 möglichen Erst-Werten.
Wenn ich, blöd gesprochen, NUR mit randomSeed() arbeite und mir immer die erste Zufallszahl ausgeben lasse, bekomme ich EINE von 1024 möglichen Zahlen - auch bei einem Bereich von 0...100000 werden nur 1024 davon 'ausgewürfelt'. Ob Da auch Mehrfach-Treffer enthalten sind - kA.

Wenn Du nur 1x den Startwert setzt (Länge eines Tastendruck zum Start der Maschine, gemessen in Micros), wirst Du verdammt viel üben müssen, um mehrfach den gleichen Seed zu erzeugen - wenn Du ab hier NUR NOCH per random() die Zufallszahlen holst, bekommst Du immer 'die Nächste' - und Diese kann überall in den 0...100000 liegen.

randomSeed(...) - setzen der START-Zahl
ramdom(...) - holen der NÄCHSTEN Zufallszahl

Je begrenzter der Seed-Wert ist, desto 'eintöniger' wird die erste Zufallszahl.

MfG

postmaster-ino:
Bei einem Seed vom analog-In bekomme ich so einen von 1024 möglichen Erst-Werten.
Je begrenzter der Seed-Wert ist, desto ‘eintöniger’ wird die erste Zufallszahl.

Deshalb nimmt man von einem unbeschalteten analogInput auch immer nur das niederwertigste Bit und baut den Seedwert daraus zusammen.

combie hatte da mal eine schöne Funktion dazu:

void seedRandom32(uint8_t analogPort) {
uint32_t wert = analogRead(analogPort) & 0x1;
  for(uint8_t i = 0; i < 32; i++) {
    wert = wert << 1;
    wert |= analogRead(analogPort) & 0x1;     
  }
  sp("RandomStartWert: "); spn(wert,HEX);
  randomSeed(wert);
}

Gruß Tommy

postmaster-ino:
Man 'darf' die Funktion so oft aufrufen, wie man will - aber Sinn sehe ich Da Keinen!

Hybride Generatoren: Im einfachsten Fall wird ein Pseudozufallszahlengenerator gewählt, der gelegentlich mit einer neuen echten Zufallszahl als Startwert neu gestartet wird.

aus: Zufallszahlengenerator – Wikipedia

combie:
Es gibt sogar Fälle, wo das sinnvoll ist.
Naja...

Ich sehe hier die Betonung auf sogar
Das "naja..." und meine Glaskugel bestärken mich in meiner Skepsis.

Die richtige Antwort ist vermutlich eher "Wofür willst du das wissen?"

Man könnte auf dem Wege eine recht gute Verschlüsselung, mit recht wenig Aufwand, basteln.

Ein anderer Sinn und Zweck will mir nicht einfallen.

Danke an alle für die Antworten (damals sry.)!

Hallo,

finde ich irgendwie cool.
Bist du von der Einjährigen Weltreise zurück? :slight_smile:

Ja bin nicht so oft im Arduino Forum

Alles Gut!

Es ist eine Rückmeldung.
Und eine Rückmeldung ist besser, als keine.
:grin: