카테고리 없음
Randomwalk 순차코드
mathboy
2011. 7. 22. 14:38
program randomwalk
implicit none
integer :: i, j, d, min_p, max_p, rtc
integer, parameter :: N_P=100000, N_W=100000
integer, dimension(N_P) :: part
integer, dimension(:), allocatable :: pos
real :: seed, rand, temp
part=0
call srand(0.5)
do i=1, N_P
do j=1, N_W
temp=rand(0)
if(temp<=0.5) then
part(i)=part(i)+1
else
part(i)=part(i)-1
endif
enddo
enddo
min_p=minval(part)
max_p=maxval(part)
allocate(pos(min_p:max_p))
do j=1,N_P
pos(part(j))=pos(part(j))+1
enddo
do i=min_p,max_p,10
print *, i, pos(i)
enddo
deallocate(pos)
end program randomwalk