fortran モンテカルロ法
モンテカルロ法により円周率πを計算するプログラムを作ったのですが、以下のプログラムでモンテカルロ法から推定された円周率piの値が実行すると大きな数字になってしまって、うまく計算できてない見たです。式に問題があるのでしょうか?教えて下さい。
rogram list1_9
implicit none
real(8) x, y, pi, pi0
integer :: n, i, im = 2**20
pi0 = 2.0d0*acos(0.0d0)
n = 0
do i = i, im
call random_number(x)
call random_number(y)
if(x ** 2 + y ** 2 <= 1.0d0) n = n + 1
enddo
pi = 4.0d0*dble(n)/dble(im)
write(*,*) ' pi, pi0, er = ', pi, pi0, pi-pi0
end program list1_9
お礼
質問が不十分ですいません。