首页 > 解决方案 > 我找不到如何解决这个解析错误

问题描述

我正在编写拉格朗日插值算法,但我的代码不断向我发出关于我的“endif”的解析错误信号

function g=lagrange(x,y,a)
  g=0
  n=length(x)
for j = 0:n
  if j~=i
    v=v*((a-x(i))/(x(j)-x(i))
  end
   g=g+v*y(j)
  endfor
endfunction 

即使我尝试一个简单的“结束”,它也会说


  syntax error

>>>   endif
          ^

>> lagrange

parse error near line 7 of file C:\Users\Victor\Desktop\octave\lagrange.m

  syntax error

>>>   end
        ^

标签: octave

解决方案


这一行:

v=v*((a-x(i))/(x(j)-x(i))

开括号比右括号多。修复它,您的语法错误应该会消失。


推荐阅读