Question #2772   Proposée par Answiki le 27/11/2021 à 8:23:55 UTC

À quoi sert l'instruction srand(time(NULL)) dans un programme en C ?

Answer   Submitted by Answiki on 09/16/2022 at 08:17:53 PM UTC

La fonction srand() sert à initialiser le générateur pseudo-aléatoire, car la fonction rand() ne tire pas véritablement des nombres au hasard.


Les ordinateurs sont incapables de produire de véritables nombres aléatoires, ils utilisent classiquement des générateurs pseudo-aléatoires qui génère en réalité des suites de nombres qui ont des propriétés similaires aux nombres aléatoires.


Le problème est, qu'à conditions initiales identiques, les suites générées sont toujours identiques. Pour obtenir des suites de nombres différentes, ce qui est généralement le cas lorsque l'on utilise un générateur pseudo-aléatoire, il est nécessaire d'initialiser la suite de façon différente. C'est ce que l'on appelle la graine (seed en anglais). La fonction srand (unsigned int seed) permet d'initialiser le générateur pseudo-aléatoire.


La solution communément adoptée pour initialiser le générateur est l'utilisation de l'heure courante de la machine qui, comme elle change constamment, va produire des graines et donc des nombres qui seront différents à chaque instant. D'où l'exécution du code suivant :

// Initialise le générateur pseudo-aléatoires
rand (time(NULL))


Voir aussi :




11 events in history
Answer by Answiki on 09/16/2022 at 08:17:53 PM

La fonction srand() sert à initialiser le générateur pseudo-aléatoire, car la fonction rand() ne tire pas véritablement des nombres au hasard.


Les ordinateurs sont incapables de produire de véritables nombres aléatoires, ils utilisent classiquement des générateurs pseudo-aléatoires qui génère en réalité des suites de nombres qui ont des propriétés similaires aux nombres aléatoires.


Le problème est, qu'à conditions initiales identiques, les suites générées sont toujours identiques. Pour obtenir des suites de nombres différentes, ce qui est généralement le cas lorsque l'on utilise un générateur pseudo-aléatoire, il est nécessaire d'initialiser la suite de façon différente. C'est ce que l'on appelle la graine (seed en anglais). La fonction srand (unsigned int seed) permet d'initialiser le générateur pseudo-aléatoire.


La solution communément adoptée pour initialiser le générateur est l'utilisation de l'heure courante de la machine qui, comme elle change constamment, va produire des graines et donc des nombres qui seront différents à chaque instant. D'où l'exécution du code suivant :

// Initialise le générateur pseudo-aléatoires
rand (time(NULL))


Voir aussi :




Answer by Answiki on 02/22/2022 at 11:11:39 AM

La fonction srand() sert à initialiser le générateur pseudo-aléatoire, car la fonction rand() ne tire pas véritablement des nombres au hasard.


Les ordinateurs sont incapables de produire de véritables nombres aléatoires, ils utilisent classiquement des générateurs pseudo-aléatoires qui génère en réalité des suites de nombres qui ont des propriétés similaires aux nombres aléatoires.


Le problème est, qu'à conditions initiales identiques, les suites générées sont toujours identiques. Pour obtenir des suites de nombres différentes, ce qui est généralement le cas lorsque l'on utilise un générateur pseudo-aléatoire, il est nécessaire d'initialiser la suite de façon différente. C'est ce que l'on appelle la graine (seed en anglais). La fonction srand (unsigned int seed) permet d'initialiser le générateur pseudo-aléatoire.


La solution communément adoptée pour initialiser le générateur est l'utilisation de l'heure courante de la machine qui, comme elle change constamment, va produire des graines et donc des nombres qui seront différents à chaque instant. D'où l'exécution du code suivant :

// Initialise le générateur pseudo-aléatoires
rand (time(NULL))


Voir aussi :




Answer by Answiki on 02/06/2022 at 04:33:03 AM

La fonction srand() sert à initialiser le générateur pseudo-aléatoire, car la fonction rand() ne tire pas véritablement des nombres au hasard.


Les ordinateurs sont incapables de produire de véritables nombres aléatoires, ils utilisent classiquement des générateurs pseudo-aléatoires qui génère en réalité des suites de nombres qui ont des propriétés similaires aux nombres aléatoires.


Le problème est, qu'à conditions initiales identiques, les suites générées sont toujours identiques. Pour obtenir des suites de nombres différentes, ce qui est généralement le cas lorsque l'on utilise un générateur pseudo-aléatoire, il est nécessaire d'initialiser la suite de façon différente. C'est ce que l'on appelle la graine (seed en anglais). La fonction srand (unsigned int seed) permet d'initialiser le générateur pseudo-aléatoire.


La solution communément adoptée pour initialiser le générateur est l'utilisation de l'heure courante de la machine qui, comme elle change constamment, va produire des graines et donc des nombres qui seront différents à chaque instant. D'où l'exécution du code suivant :

// Initialise le générateur pseudo-aléatoires
rand (time(NULL))


Voire aussi :




Question by Answiki 01/29/2022 at 06:01:18 AM
En C, à quoi sert la fonction rand (time(NULL)) ?
Question by Answiki 01/29/2022 at 06:00:57 AM
En C, que fait la fonction rand(time(NULL)) ?
Question by Answiki 01/29/2022 at 06:00:31 AM
En C, que fait la fonction srand() ?
Question by Answiki 01/29/2022 at 06:00:11 AM
En C, à quoi sert la fonction srand() ?
Answer by Answiki on 11/27/2021 at 08:29:27 AM

La fonction srand() sert à initialiser le générateur pseudo-aléatoire, car la fonction rand() ne tire pas véritablement des nombres au hasard.


Les ordinateurs sont incapables de produire de véritables nombres aléatoires, ils utilisent classiquement des générateurs pseudo-aléatoires qui génère en réalité des suites de nombres qui ont des propriétés similaires aux nombres aléatoires.


Le problème est qu'à conditions initiales identiques, les suites générées sont toujours identiques. Pour obtenir des suites de nombres différentes, ce qui est généralement le cas lorsque l'on utilise un générateur pseudo-aléatoire, il est nécessaire d'initialiser la suite de façon différente. C'est ce que l'on appelle la graine (seed en anglais). La fonction srand (unsigned int seed) permet d'initialiser le générateur pseudo-aléatoire.


La solution communément adoptée pour initialiser le générateur est l'utilisation de l'heure courante de la machine qui, comme elle change constamment, va produire des graines et donc des nombres qui seront différents à chaque instant. D'où l'exécution du code suivant :

// Initialise le générateur pseudo-aléatoires
rand (time(NULL))


Voire aussi :




Question by Answiki 11/27/2021 at 08:23:55 AM
À quoi sert l'instruction srand(time(NULL)) dans un programme en C ?
Question by Answiki 11/27/2021 at 08:23:55 AM
À quoi sert la ligne srand (time(NULL)) dans un programme en C ?
Question by Answiki 11/27/2021 at 08:23:55 AM
En C, à quoi sert le fonction srand() ? replaced by #5819.

Icons proudly provided by Friconix.