Bagaimana untuk Menjana Nombor Rawak dengan Ketepatan Perpuluhan dalam C?

Barbara Streisand
Lepaskan: 2024-11-02 10:49:02
asal
586 orang telah melayarinya

How to Generate Random Numbers with Decimal Precision in C  ?

Menjana Nombor Rawak dengan Ketepatan Perpuluhan dalam C

Penjanaan nombor rawak ialah alat penting dalam pelbagai aplikasi pengaturcaraan. Dalam C , terdapat beberapa cara untuk menjana nombor rawak, tetapi pendekatan yang paling mudah untuk menjana beregu dengan format tertentu ialah melalui kelas std::uniform_real_distribution.

Untuk menjana nombor berganda rawak dalam selang waktu tertentu, kami boleh menggunakan langkah berikut:

  1. Sertakan Pengepala yang Diperlukan: Sertakan fail pengepala dalam kod sumber.
  2. Tentukan Sempadan: Tentukan sempadan bawah dan atas selang yang kita mahu hasilkan nombor rawak.
  3. Mulakan Enjin Rawak: Buat seketika std::default_random_engine untuk menjana aliran nilai rawak.
  4. Buat Pengagihan Seragam: Cipta objek std::uniform_real_distribution dengan sempadan yang ditetapkan sebagai hujah.
  5. Jana Random Double: Panggil operator() objek pengedaran menggunakan enjin rawak untuk menghasilkan dua rawak dalam selang waktu.
<code class="cpp">#include <random>

int main() {
    double lower_bound = 0;
    double upper_bound = 10000;
    std::uniform_real_distribution<double> unif(lower_bound, upper_bound);
    std::default_random_engine re;
    double a_random_double = unif(re);

    return 0;
}</code>
Salin selepas log masuk

Coretan kod ini menjana dua kali ganda rawak antara 0 dan 10000 dengan ketepatan perpuluhan, yang memenuhi keperluan soalan. Untuk mendapatkan maklumat tambahan, rujuk artikel John D. Cook tentang "Penjanaan nombor rawak menggunakan C TR1" atau panduan Stroustrup tentang "Penjanaan nombor rawak."

Atas ialah kandungan terperinci Bagaimana untuk Menjana Nombor Rawak dengan Ketepatan Perpuluhan 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!