Maison > Article > développement back-end > Comment générer des nombres doubles aléatoires avec une précision spécifiée en C ?
Génération de nombres doubles aléatoires en C avec une précision spécifiée
Générer des nombres doubles aléatoires dans une plage spécifiée est une exigence courante en programmation. En particulier, lorsque vous avez besoin que les nombres aient une précision spécifique, telle que « xxxxx,aaaaa », cette tâche peut devenir un peu plus difficile. Heureusement, C fournit une bibliothèque robuste pour gérer la génération de nombres aléatoires.
La solution consiste à utiliser la classe uniform_real_distribution de la classe
<code class="cpp">#include <random> int main() { // Define the lower and upper bounds of the desired range double lower_bound = 0; double upper_bound = 10000; // Create a uniform real distribution within the specified range std::uniform_real_distribution<double> unif(lower_bound, upper_bound); // Initialize a random engine std::default_random_engine re; // Generate a random double using the distribution double a_random_double = unif(re); return 0; }</code>
Dans cet exemple, la plage est définie entre 0 et 10000. La distribution unif est initialisée avec ces limites. Pour générer un double aléatoire, le moteur re est utilisé pour alimenter la distribution. Le a_random_double résultant sera un nombre aléatoire dans la plage spécifiée.
Pour plus de détails sur la génération de nombres aléatoires en C, reportez-vous à la « Génération de nombres aléatoires à l'aide de C TR1 » de John D. Cook ou à la « Génération de nombres aléatoires » de Stroustrup. "
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!