Erklärung
-
Bin neu dabai und habe dementsprechend ein naives Problem.
Benötige eine genau Erlkärung des folgenden Problemes:
#include <time.h>
#include <stdlib.h>
#include <iostream.h>void main() {
srand((unsigned)time(NULL));
double tmp;
tmp = rand() % 100;
cout << tmp << endl;
}Danke
-
Welches Problem?
-
Ich verstehe nicht, wie das Program funktioniert bzw. warum die einzelnen Schritte vorgenommen wurden. Aus diesem Grund benötige ich eine explizite Erläuterung jeder Zeile.
Thx
-
bitte löschen
-
#include <time.h> // deklariert Funktionen für Zeit und Datum #include <stdlib.h> // deklariert diversen Krempel, u.a. rand und srand für den Zufallsgenerator #include <iostream.h> // deklariert u.a. den Ausgabestrom cout // Leerzeile void main() { // beginn des Hauptprogramms srand((unsigned)time(NULL)); // initialisiert den Zufallsgenerator mit der aktuellen Zeit double tmp; // deklariert eine lokale Variable vom Typ double (= Fließkommazahlen doppelter Genauigkeit) tmp = rand() % 100; // tmp wird eine Zufallszahl modulo 100 zugewiesen (dh der Rest bei einer Division durch 100) cout << tmp << endl; // tmp wird auf dem Strom cout (Standardausgabestrom) ausgegeben } // Ende von main
Vielleicht sollte man dazusagen, dass das Programm nach Standard-C++ teils veraltet, teils falsch ist. Richtig:
#include <ctime> #include <cstdlib> #include <iostream> using namespace std; int main() { srand(static_cast<unsigned>(time(0))); double tmp = rand() % 100; cout << tmp << endl; }