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

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