Bagaimana untuk Menjana Nombor Berganda Rawak dengan Ketepatan Ditentukan dalam C?

Patricia Arquette
Lepaskan: 2024-10-30 19:14:30
asal
560 orang telah melayarinya

How to Generate Random Double Numbers with Specified Precision in C  ?

Menjana Nombor Berganda Rawak dalam C dengan Ketepatan Yang Ditentukan

Menjana nombor berganda rawak dalam julat yang ditentukan ialah keperluan biasa dalam pengaturcaraan. Terutamanya, apabila anda memerlukan nombor untuk mempunyai ketepatan tertentu, seperti "xxxxx,yyyyy", tugas ini boleh menjadi sedikit lebih mencabar. Nasib baik, C menyediakan perpustakaan yang teguh untuk mengendalikan penjanaan nombor rawak.

Penyelesaian melibatkan penggunaan kelas pengedaran_seragam_sebenar daripada perpustakaan. Taburan ini boleh menghasilkan gandaan rawak dalam julat yang ditentukan. Kod berikut menunjukkan cara menggunakan kelas ini:

<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>
Salin selepas log masuk

Dalam contoh ini, julat ditakrifkan antara 0 dan 10000. Taburan unif dimulakan dengan sempadan ini. Untuk menghasilkan gandaan rawak, enjin semula digunakan untuk menyuap ke dalam pengedaran. A_random_double yang terhasil akan menjadi nombor rawak dalam julat yang ditentukan.

Untuk butiran lanjut tentang penjanaan nombor rawak dalam C , rujuk "Penjanaan nombor rawak menggunakan C TR1" John D. Cook atau "Penjanaan nombor rawak Stroustrup. "

Atas ialah kandungan terperinci Bagaimana untuk Menjana Nombor Berganda Rawak dengan Ketepatan Ditentukan dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!