首頁 > 後端開發 > C++ > 主體

如何在 C 中產生十進制精度的隨機數?

Barbara Streisand
發布: 2024-11-02 10:49:02
原創
586 人瀏覽過

How to Generate Random Numbers with Decimal Precision in C  ?

在 C 中產生十進位精確度的隨機數

隨機數產生是各種程式設計應用程式中必備的工具。在 C 中,有多種方法可以產生隨機數,但產生特定格式的雙精度數最直接的方法是透過 std::uniform_real_distribution 類別。

要產生指定區間內的隨機雙精度數,我們可以使用以下步驟:

  1. 包含必要的標頭:包含;來源程式碼中的頭檔。
  2. 定義邊界:決定我們要產生隨機數的區間的下限和上限。
  3. 初始化隨機引擎: 實例化 std::default_random_engine 的實例以產生隨機值流。
  4. 建立均勻分佈: 建立一個具有指定邊界的std::uniform_real_distribution 物件:
  5. 產生隨機雙精確度數:使用隨機引擎分佈物件的operator(),在區間內產生一個隨機雙精度數。
<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>
登入後複製

此程式碼片段產生一個 0 到 10000 之間的十進制精度的隨機 double,滿足問題的要求。有關更多信息,請參閱 John D. Cook 的文章“使用 C TR1 生成隨機數”或 Stroustrup 的“隨機數生成”指南。

以上是如何在 C 中產生十進制精度的隨機數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!