Einführung in den Zufallszahlengenerator in C

Um die erwartete Ausgabe zu generieren, muss das Programm die richtige Eingabe benötigen. Normalerweise werden die Eingaben vom Benutzer bereitgestellt, aber manchmal muss das Programm die Eingabe selbst auswählen. Um beispielsweise den aktuellen Zeitstempel zu erhalten, verwendet die Anwendung eine eingebaute Funktion, um ihn vom System abzurufen. Auf die gleiche Weise müssen wir manchmal von der Anwendung eine beliebige Zufallszahl generieren lassen, die weiterverarbeitet werden kann, um die angenommene Ausgabe zu erhalten. Obwohl es für den Benutzer zufällig aussieht, bietet uns die Programmiersprache den Mechanismus, um den Bereich der Zufallszahl zu definieren. In diesem Artikel werden wir die Programmimplementierung der Zufallszahlengenerierung mit der Programmiersprache C sehen. Wir werden uns auf die eingebaute Funktion konzentrieren, die von C bereitgestellt wird, um eine Zufallszahl zu generieren.

Was sind Zufallszahlengeneratorfunktionen in C?

Es gibt verschiedene Ansätze, um die Zufallszahl mit einer beliebigen Programmiersprache zu generieren. Man kann die Funktion für die Schätzung oder Generierung der Zufallszahl auf eigene Weise definieren, während es in jeder Programmiersprache, die die Zufallszahl generiert, eingebaute Funktionen gibt. In der Programmiersprache C haben wir eine Funktion namens rand, die bei der Generierung der Zufallszahl hilft. Diese Funktion ist in C vordefiniert und kann mit der Header-Datei stdlib.h im Programm implementiert werden. Der Entwickler muss die Header-Datei stdlib.h am Anfang des Programms erwähnen, um die rand-Funktion nutzen zu können. Bei jedem Aufruf dieser Funktion wird eine völlig zufällige Zahl generiert. Basierend auf der Anforderung kann man generieren, dass die Zahl zum Datentyp Integer, Float oder Double gehört. Es kann einfach mit der Funktion rand () im Programm verwendet werden.

Obwohl die Rand-Funktion den Zufallswert generieren soll, blieb sie bei jeder Ausführung des Programms bei der Generierung desselben Werts hängen und kann aufgrund des konstanten Startwerts auftreten. Wenn die Anforderung besteht, dass die neue Zufallszahl bei jeder Programmausführung generiert wird, müssen wir sicherstellen, dass sich der Startwert bei jeder Programmausführung ändert. Die Zeit ändert sich ständig und kann auch als etwas angesehen werden, das dabei helfen kann, jedes Mal einen zufälligen Startwert zu erhalten, und um die Zeit im Programm zu verwenden, müssen wir die Header-Datei time.h verwenden.

Generation Ganzzahlen

Die Funktion rand () dient zur Erzeugung einer Zufallszahl. Jedes Mal, wenn es aufgerufen wird, gibt es eine Zufallszahl. Wenn die Entwickler eine Logik hinzufügen, können sie die Zufallszahl innerhalb eines definierten Bereichs generieren. Wenn der Bereich nicht explizit definiert ist, wird ein vollständig zufälliger ganzzahliger Wert zurückgegeben. Die rand () -Funktion in C könnte verwendet werden, um die Zufallszahl zu generieren, und die generierte Zahl löscht den Startwert vollständig. Ein Startwert ist der Wert, der von der Rand-Funktion zum Generieren des Zufallswerts verwendet wird. Wenn der Startwert weiterhin geändert wird, wird die generierte Nummer jedes Mal neu, wenn das Programm kompiliert wird. Andernfalls wird jedes Mal derselbe Wert zurückgegeben, der generiert wurde, als das Programm zum ersten Mal ausgeführt wurde. Um das Folgende zu generieren, wird das Programm zum Generieren der ganzzahligen Zufallszahl verwendet.

Programm

#include
#include
#include
int main()
(
int rand_num;
srand(time(0));
printf("The randomly generated number is”);
rand_num = rand();
printf("%d\n", rand_num);
)
)

Ausgabe:

Die zufällig generierte Zahl ist 1804289383.

In diesem Programm haben wir die Header-Datei time.h verwendet, mit der die Systemzeit für die Generierung der Zufallszahl genutzt wird. Da sich die Zeit jedes Mal ändert, ändert sich der Startwert jedes Mal, wenn das Programm ausgeführt wird. Dies hilft uns, bei jeder Ausführung des Programms eine Zufallszahl zu generieren. Rand_num ist die Variable, die zum Speichern einer zufällig generierten Zahl verwendet wird. Die Funktion rand () generiert eine Zufallszahl, die der Variablen rand_num zugewiesen wird. Da wir den Rückgabewert der Zufallszahl nicht explizit definiert haben, erhalten wir eine Ganzzahl.

Fließkommazahlen generieren

Der Ansatz zum Generieren des Zufalls-Float-Werts ähnelt dem Ansatz zum Generieren der Ganzzahl. Der einzige Unterschied besteht darin, dass wir explizit definieren müssen, dass der Wert, den wir von der rand-Funktion erwarten, ein Float sein soll. Der Float-Wert belegt normalerweise mehr Speicherplatz als der Short-Int-Wert. Das Programm, das wir oben für die Zufallsgenerierung von Ganzzahlen geschrieben haben, ist das gleiche, das wir hier schreiben werden. Der einzige Unterschied ist eine explizite Datentypdefinition. Ähnlich wie im letzten Programm haben wir auch hier die Header-Datei time.h verwendet, um einen Beitrag zur Generierung von Zufalls-Gleitkommazahlen zu leisten. Wenn diese Header-Datei nicht im Programm enthalten ist, gibt sie jedes Mal den gleichen Wert an. Ausgeführt wird. Unten sehen Sie das Programm zur zufälligen Generierung von Float-Werten.

Programm

#include
#include
#include
int main()
(
float rand_num;
srand(time(0));
printf("The randomly generated float number is ”);
rand_num = (float) rand();
printf("%f", rand_num);
)
)

Ausgabe:

In diesem Programm haben wir (float) verwendet, um explizit zu definieren, dass der von der rand-Funktion zurückgegebene Wert float sein soll. Da die Variable ran_num auch mit einem Float-Datentyp definiert ist, kann sie die Float-Nummer verarbeiten, die in der C-Programmiersprache normalerweise sechs Nachkommastellen aufweist. Beim Drucken des Gleitkommawerts haben wir% f verwendet, da beim Drucken des Gleitkommawerts darauf geachtet werden muss.

Fazit

Um die Zufälligkeit der Zahl zu erhöhen, können mathematische Ausdrücke verwendet werden. Mithilfe der Logik kann man auch den Nummernbereich definieren, unter dem die Nummer zufällig generiert werden soll. Die Funktion zum Erzeugen von zufälligem Gummi wird von allen Programmiersprachen bereitgestellt und in der tatsächlichen Anwendung basierend auf der Anforderung verwendet. Um die starke Zufälligkeit der Zahl sicherzustellen, müssen wir sicherstellen, dass der Startwert, mit dem die Rand-Funktion den Zufallswert generiert, bei jeder Ausführung des Programms sehr zufällig und neu ist.

Empfohlene Artikel

Dies ist eine Anleitung zum Zufallszahlengenerator in C. Hier diskutieren wir die Funktion, die Generierung von Ganzzahlen und die Generierung von Gleitkommazahlen in C. Sie können auch unsere anderen Artikel lesen, um mehr zu erfahren -

  1. Zufallszahlengenerator in R
  2. Was ist eine Template-Klasse in C ++?
  3. Random Forest Algorithmus
  4. Frameworks In Java
  5. Was ist der Zufallszahlengenerator in Python?
  6. Zufallszahlengenerator in C ++ (Beispiele mit Schritten)
  7. Zufallszahlengenerator in Matlab
  8. Zufallszahlengenerator in C #
  9. Zufallszahlengenerator in JavaScript
  10. Zufallszahlengenerator in PHP