主题:帮忙看看,这个小程序循环输出的时候为什么第五项为零?
real function y(x)
real x,pi
pi=3.1415926
if((x.ge.0).and.(x.le.0.005))then
y=100*sin(pi*x/2)
else
y=0
endif
end
program main
real external y
real dt
integer i,j
dt=0.001
do j=1,61,1
print*,y(j*dt)
end do
print*,y(0.001),y(0.002),y(0.003),y(0.004),y(0.005)
end
计算结果 应该是y(0.005)=0.78539 单个调用函数没问题,但是用循环打印出来的值里
y(0.005)= 0, 很困扰。。。。。
求解释!!!![em18]
real x,pi
pi=3.1415926
if((x.ge.0).and.(x.le.0.005))then
y=100*sin(pi*x/2)
else
y=0
endif
end
program main
real external y
real dt
integer i,j
dt=0.001
do j=1,61,1
print*,y(j*dt)
end do
print*,y(0.001),y(0.002),y(0.003),y(0.004),y(0.005)
end
计算结果 应该是y(0.005)=0.78539 单个调用函数没问题,但是用循环打印出来的值里
y(0.005)= 0, 很困扰。。。。。
求解释!!!![em18]