Zufallszahlen mit der Fomel linearen Kongruenzmethode

Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

BasicC

Erfahrenes Mitglied
2.1.: Entwickeln Sie ein Zufallsgenerator mit der linearen Kongruenzmethode.
Initialisieren Sie zunächst modulglobale Variablen in der Quelldatei random.cpp. Definieren Sie dazu auch die Funktionen randInt(); time(0) (diese ist in der Header-Datei <ctime> deklariert.) und randDouble(). randDouble() ruft die Funktion randInt() auf, um eine Pseudo-Zufallszahl größer oder gleich 0 und kleiner als 1 zu erzeugen. Die Funktion randInt() erzeugt die nächste Pseudo-Zufallszahl und gibt diese zurück. Beim ersten Aufruf initialisiert diese Funktion zusätzlich den Keim der Pseudo-Zufallszahlen durch den Aufruf der Funktion time(0).
1. Erstellen Sie zum Definieren der Funktionen eine Quelldatei random.cpp.
2. Führen Sie die Prototypen der Funktionen in einer Header-Datei random.h an.
3. Definieren Sie dann eine main-Funktion in einer separaten Quelldatei, um 20 ganzzahlige Zufallszahlen und 20 gebrochene Zufallszahlen auszugeben.
2.2.: Platzieren Sie beide Zufallszahlengeneratoren in einem eigenen Namensbereich und passen Sie die Deklarationen und Aufrufe der Funktionen dementsprechend an.

Code:
#include "random.hpp"

#include <iostream>

#include <ctime>

using namespace std;


static int a,b ,m;

int main(){

    

    int randint();

    

    int randint(int a, int b, int m);

    static int next=time(0);

    cout << time ;

    return 0;

    }

noch habe ich soviel, die Aufgabe ist etwas schwer, könnte mir jemand eventuell Lösungansätze geben wie ich vorgehen soll ?
 
könnte mir jemand eventuell Lösungansätze geben wie ich vorgehen soll ?
Naja, ein Anfang wäre, der Anleitung zu folgen und die Header- und Sourcedateien zu erstellen ("Modul").

Dann suchst du den Algorithmus für die Lineare Kongruenzmethode zusammen.
Und dann setzt du die Eingaben für diesen Algorithmus abhänging von time(). (In einem ersten Schritt auch als mathematischer Ausdruck, muss noch kein Code sein)
Wenn es dann noch unklar ist, melde dich gerne mit dem aktuellen Stand nochmals.

cwriter
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
Zurück