rand() und srand() in C++

Was ist die Grundlage der Generierung von Zufallszahlen in C++?

Gibt es da eine Logik oder ein Prinzip dahinter?

Sind die zahlen, die völlig zufällig?

Angenommen, ich bin mit diesem Programm:

#include <iostream.h>
#include <stdlib.h>
#include <time.h>

int main()
{
    /*
    Declare variable to hold seconds on clock.
    */
    time_t seconds;
    /*
    Get value from system clock and
    place in seconds variable.
    */
    time(&seconds);
    /*
    Convert seconds to a unsigned
    integer.
    */
    srand((unsigned int) seconds);
    /*
    Output random values.
    */
    cout<< rand() << endl;
    cout<< rand() << endl;
    cout<< rand() << endl;
    return 0;
}

Was es zeigt:
http://img14.imageshack.us/img14/1538/98271820.png

Zeigte 205 zweimal.

  • Wo haben Sie gefunden Funktionen random und randomize?
  • Sie können so etwas wie /dev/random mit der <random> header.
  • in der Elften Klasse lehrbuch in einem Kapitel mit dem Titel "Standard-Library-Funktionen"
  • Lassen Sie Ihre post-Titel, in Google. Dann nehmen Sie "in C++" und Suche nach diesem. Wenn die Ergebnisse der Suche werden diese Sie lassen Sie mit Fragen, kommen zurück und Fragen sich, diese Fragen.
  • Die sind nicht zufällig. Das sind pseudo-zufällig .
  • wie pseudo-random @Geschichtenerzähler
  • Das heißt, Sie erzeugen eine Sequenz, passieren die meisten tests für die "Zufälligkeit", sondern es erzeugt in einer deterministischen Weise, und können repliziert werden, mit der richtigen Samen.
  • Ich fixierte Ihre Titel konsequent zu sein mit dem code, den du fragst nach.

InformationsquelleAutor Manoj Pandey | 2013-03-03
Schreibe einen Kommentar