五、查找,提出小数
parameter(n=20) integer m(n),min,p,temp data m/61,58,12,36,54,2,57,68,21,47,25,14,26,39,65,98,74,85,65,21/ min=m(1) p=1 do 10,i=2,20
if(m(i).lt.min) then min=m(i) p=i end if 10 continue
temp=m(p) do 100,j=p,2,-1 m(j)=m(j-1) 100 continue
m(1)=temp write(*,300)m 300 format(1x,5i4) End
六、打印9*9乘法表
100 format(1x,' a multiplication ') 200 format(1x,'_____________________________________________________') 300 format(1x,' ',9('(',i1,') '),' ') 400 format(1x,'(',i1,')',9i5) write(*,100) write(*,300)(i,i=1,9) write(*,200) do 10,i=1,9 write(*,400)i,(i*j,j=1,9) 10 continue
write(*,200) end
第十章
一、牛顿迭代法
f1(x)=x**3+-2*x*x+x-1.0 f2(x)=3*x*x-4*x+1.0 read(*,*)x
10 y=x-f1(x)/f2(x) if(abs(x-y).gt.1e-6)then x=y goto 10 else print*,'值x=',x endif end
十一章
一、add函数编程
integer function add(m,n) add=m+n end integer add k=add(3,4) j=add(1,2) print*,k,j,add(2,9) end
二、阶乘函数编程
real function ifac(n) ifac=1.0 if(n.eq.0) then return else do 10,i=n,1,-1 ifac=ifac*i 10 continue end if end
! program main integer r,k real ifac
write(*,*)'请输入r,k(r>k)' read(*,*)r,k if(r.lt.0.or.k.lt.0.or.(r-k).lt.0) then write(*,*)'输入错误' else write(*,*)ifac(r)/ifac(k)/ifac(r-k) end if end
三、最大公约数编程
integer function gys(m,n) integer temp 10 temp=mod(m,n) if(temp.eq.0)then gys=n return else m=n n=temp goto 10 end if
end
integer gys
print*,gys(24,16) end