回 帖 发 新 帖 刷新版面

主题:[讨论]SOS!

real function lglr(n,x,xx,yy)
  real,dimension(0:4)::xx,yy
  lglr=0
  do i=0,n
      y=1
      do j=0,n
        if (j/=i)  then
        y=y*(x-xx(j))/(xx(i)-xx(j))
        endif
      enddo
      lglr=lglr+y*yy(i)
  enddo
  end function


   real,dimension(0:4)::x1(0:2),x2,y1(0:2),y2
   x1=(/1.634,1.702,7.828/)
   y1=(/2.46459,2.65271,3.03035/)
   x2=(/1.615,1.634,1.702,7.828,1.921/)
   y2=(/2.41450,2.46459,2.65271,3.03035,3.34066/)
   print *,"f(1.682)=",lglr(2,1.682,x1,y1)
   print *,"f(1.682)=",lglr(4,1.682,x2,y2)
   end

这个程序有点错误,没得结果,调试后本人看不懂啊,请高手帮忙啊
  

回复列表 (共2个回复)

沙发

real function lglr(n,x,xx,yy)
  real,dimension(0:4)::xx,yy
  lglr=0
  do i=0,n
      y=1
      do j=0,n
        if (j/=i)  then
        y=y*(x-xx(j))/(xx(i)-xx(j))
        endif
      enddo
      lglr=lglr+y*yy(i)
  enddo
  end function


   real,dimension(0:4)::x1(0:2),x2,y1(0:2),y2
real lglr
   x1=(/1.634,1.702,7.828/)
   y1=(/2.46459,2.65271,3.03035/)
   x2=(/1.615,1.634,1.702,7.828,1.921/)
   y2=(/2.41450,2.46459,2.65271,3.03035,3.34066/)
   print *,"f(1.682)=",lglr(2,1.682,x1,y1)
   print *,"f(1.682)=",lglr(4,1.682,x2,y2)
   end

即在主程序中加了语句:real lglr
因为默认为整型,而实际是实型,所以要加一句:real lglr

板凳


谢谢老兄了,果真是你所说得,对了!

我来回复

您尚未登录,请登录后再回复。点此登录或注册