溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java使用Math.random()結(jié)合蒙特卡洛方法計算pi值示例

發(fā)布時間:2020-08-31 15:08:58 來源:腳本之家 閱讀:166 作者:軟貨 欄目:編程語言

本文實例講述了Java使用Math.random()結(jié)合蒙特卡洛方法計算pi值。分享給大家供大家參考,具體如下:

一、概述

蒙特·卡羅方法(Monte Carlo method),也稱統(tǒng)計模擬方法,是二十世紀(jì)四十年代中期由于科學(xué)技術(shù)的發(fā)展和電子計算機的發(fā)明,而被提出的一種以概率統(tǒng)計理論為指導(dǎo)的一類非常重要的數(shù)值計算方法。是指使用隨機數(shù)(或更常見的偽隨機數(shù))來解決很多計算問題的方法。與它對應(yīng)的是確定性算法。

詳細可參考百度百科:https://baike.baidu.com/item/%E8%92%99%E7%89%B9%C2%B7%E5%8D%A1%E7%BD%97%E6%96%B9%E6%B3%95

二、實現(xiàn)代碼

/**
 * Monte Carlo algorithm
 */
import java.math.*;
public class PI {
  /**
   * @param args
   */
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    double xf = 0.0d;
    double yf = 0.0d;
    int total = 0;
    for(int i = 0;i<1000000;i++){
      xf = Math.random();
      yf = Math.random();
      if(Math.sqrt(xf*xf+yf*yf) < 1)
        total++;
    }
    System.out.println("億速云測試結(jié)果:");
    System.out.println(4*(total/1000000.0));
  }
}

運行結(jié)果:

Java使用Math.random()結(jié)合蒙特卡洛方法計算pi值示例

更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》

希望本文所述對大家java程序設(shè)計有所幫助。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI