Générer des nombres aléatoires dans une certaine plage en C ++

Générer des nombres aléatoires dans une certaine plage en C ++
Générer des nombres aléatoires En C ++, a de nombreuses utilisations, de la simulation et du développement de jeux à l'analyse des données et à la cryptographie. Malgré son utilité, produire des nombres vraiment aléatoires est une tâche délicate. Pourtant, avec une compréhension de base du langage de programmation C ++, il est possible de Générer au hasard Nombres avec une relative facilité.

Cet article est un guide utile pour générer des nombres aléatoires dans une certaine plage en C++.

Générer des nombres aléatoires dans une certaine plage en c++

En C ++, il existe deux méthodes différentes pour produire nombres aléatoires:

  • Fonction Rand ()
  • fonction srand ()

1: RAND () Fonction

Le premier type de aléatoire La génération de nombres en C ++ utilise la fonction de bibliothèque rand(). Avec cette fonction, l'utilisateur fournit l'entrée maximale et minimale, et elle renverra un nombre aléatoire Entre ces deux valeurs. Le numéro renvoyé peut être un entier ou un numéro de point flottant, selon le choix de l'utilisateur. La plage des valeurs fournies doit être positive, mais elle peut prendre n'importe quelle valeur et n'est pas limitée à 0 et 1.

#inclure
#inclure
Utilisation de Namespace Std;
int main()

pour (int x = 0; x < 5; x++)
couter << rand() << " ";
retour 0;

Dans ce code, une boucle est utilisée pour créer aléatoire Nombres cinq fois en utilisant la fonction intégrée rand().

Sortir

Si vous souhaitez générer des nombres aléatoires entre 0 et 1 à "rand", Vous pouvez utiliser le code suivant:

#inclure
#inclure
Utilisation de Namespace Std;
int main()

pour (int x = 0; x < 5; x++)
couter << (rand() % 10001) / 10000.0 << " ";
retour 0;

Sortir:

Le problème avec le rand() La fonction est que chaque fois que nous exécutons le programme, le résultat sera la même séquence.

2: fonction srand ()

La seule différence entre le srand () et rand() Les fonctions sont la valeur des semences, qui est utilisée pour établir la plage ou la séquence des entiers pseudo-aléatoires. Le C++ générateur de nombres aléatoires commencera une fois que la valeur des semences est entrée en utilisant le srand () méthode. La sortie apparaît aléatoire grâce à cette valeur de semence.

#inclure
#inclure
#inclure
Utilisation de Namespace Std;
int main()

srand (temps (0));
pour (int i = 0; i < 5; i++)
couter << rand() << " ";
retour 0;

Dans ce code, nous utilisons temps() fonctionner comme une valeur de graine pour srand () fonction puis un nombre aléatoire est généré 5 fois en utilisant une boucle de temps.

Sortir

Si vous souhaitez générer des nombres aléatoires entre 0 et 1 à "Srand", Vous pouvez utiliser le code suivant:

#inclure
#inclure
#inclure
Utilisation de Namespace Std;
int main()

srand (temps (0));
pour (int i = 0; i < 5; i++)
couter << (rand() % 10001) / 10000.0 << " ";
retour 0;

Sortir

Générer des nombres aléatoires dans une plage donnée - C++

C'est facile de générer des nombres aléatoires d'un plage spécifiée en c++. Pour ce faire, un programmeur doit avoir une compréhension imaginative de la façon dont nombres aléatoires peut être produit et ce que chaque bibliothèque, fonction et paramètre peut apporter au processus global.

En C ++, le rand() La fonction et certaines mathématiques de base peuvent être utilisées pour produire un entier aléatoire dans une plage spécifiée. Un exemple de code qui produit un aléatoire Entier entre 0 et 99 est fourni ici:

#inclure
#inclure
#inclure
Utilisation de Namespace Std;
int main()
srand (temps (null));
int num = rand ()% 100;
couter << "Random number: " << num << endl;
retour 0;

L'heure actuelle est utilisée pour semer le générateur de nombres aléatoires dans le code ci-dessus, ce qui permet de garantir que le généré nombres aléatoires sont différents à chaque fois que le programme est exécuté. La fonction rand ()% 100 prend le reste du résultat de rand() et le multiplie par 100 pour obtenir un entier aléatoire entre 0 et 99.

Sortir

Conclusion

Les utilisateurs de C ++ peuvent générer des nombres aléatoires dans une certaine plage en utilisant deux méthodes simples. On utilise rand() qui génère des nombres aléatoires dans une plage. Cependant, il génère un nombre similaire à chaque fois que vous exécutez le code. Le srand () la méthode est utilisée pour produire une gamme de divers entiers aléatoires.