mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-14 08:01:49 -05:00
42 lines
863 B
Fortran
42 lines
863 B
Fortran
|
program prob
|
||
|
|
||
|
implicit real*8 (a-h,o-z)
|
||
|
integer*8 binomial
|
||
|
integer x,s,XX,NN
|
||
|
real*8 hypergeo
|
||
|
character arg*8
|
||
|
|
||
|
nargs=iargc()
|
||
|
if(nargs.ne.4) then
|
||
|
print*,'Usage: prob x N X s'
|
||
|
print*,'Example: prob 35 63 40 40'
|
||
|
go to 999
|
||
|
endif
|
||
|
call getarg(1,arg)
|
||
|
read(arg,*) x
|
||
|
call getarg(2,arg)
|
||
|
read(arg,*) NN
|
||
|
call getarg(3,arg)
|
||
|
read(arg,*) XX
|
||
|
call getarg(4,arg)
|
||
|
read(arg,*) s
|
||
|
|
||
|
! print*,binomial(5, 3) ! 10
|
||
|
! print*,binomial(40, 19) ! 131282408400
|
||
|
|
||
|
write(*,1010) x,NN,XX,s
|
||
|
1010 format(//' x=',i2,' N=',i2,' X=',i2,' s=',i2)
|
||
|
write(*,1012)
|
||
|
1012 format(/' x P(x|N,X,s) P(>=x|N,X,s) '/ &
|
||
|
'-------------------------------')
|
||
|
|
||
|
hsum=0.d0
|
||
|
do ix=x,XX
|
||
|
h=hypergeo(ix,NN,XX,s)
|
||
|
hsum=hsum + h
|
||
|
write(*,1020) ix,h,hsum
|
||
|
1020 format(i3,2d13.4)
|
||
|
enddo
|
||
|
|
||
|
999 end program prob
|