Zufallsgenerator

Gast #76074
Kennt jemand eine Möglichkeit eine zufällige Zahl zwischen x und y (soll
man variabel halten können, so wie bei: www.php.net/rand )
 zu bekommen?
Wichtig: Es soll variabel bleiben können, ich kann dann also net jedes
Mal die stdlib.h abändern (zumal ich es mehrmals im Code mit
verschiedenen Werten brauche).

Schonmal danke für alle Tipps
tacklemoe
Gast
Es hätte sowieso keinen Sinn, stdlib.h zu ändern.  Diese Datei gehört
zur avr-libc, sie ist nicht durch den Benutzer zu verändern.  Die
Änderung von RAND_MAX da drin würde rein gar nichts bewirken außer daß
Deine Applikation ein RAND_MAX sieht, das nicht mehr zur Bibliothek
paßt.

Der korrekte Weg ist, das Ergebnis von rand() (oder random()) passend
zu skalieren.  Es ist ja letztlich weiter nichts als eine Zufallsfolge
mit 16 bzw. 32 zufällig verteilten Bits, Du mußt nur den Wertebereich
entsprechend einschränken.  Klassisch würde man das mit einem modulus
machen, allerdings ist der ziemlich rechenzeitaufwendig.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.