1. 程式人生 > >利用fortran語言驗證“拋硬幣”的概率

利用fortran語言驗證“拋硬幣”的概率

使用ivf編譯器
Program main
    implicit none 
    integer(kind=8) :: nn = 1000000000  !.. 設定拋硬幣的總次數
    integer(kind=8) :: m, n, i 
    real(kind=8)    :: a   !.. a > 0.5: 設為硬幣朝上;反之朝下
    
    m = 0  !.. 朝上的次數
    n = 0  !.. 朝下的次數
    call random_seed
    do i = 1, nn 
        call random_number( a )
        if ( a > 5d-1 ) m = m + 1
        if ( a < 5d-1 ) n = n + 1
    end do
    print*, dble(m) / nn  !.. 朝上的概率
    print*, dble(n) / nn  !.. 朝下的概率
    
End program main

由得出的結果可以看到,隨著實驗次數nn的增大,朝上與朝下的概率幾乎趨於1/2.