v
function [a,b] = testf()
if 5 > 3 then
[a,b] = return(1,2)
end
[a,b] = (10,20)
endfunction
/*
--> [a,b] = testf()
b = 20.
a = 10.
/*
Size: a a a
v
function [a,b] = testf()
if 5 > 3 then
[a,b] = return(1,2)
end
[a,b] = (10,20)
endfunction
/*
--> [a,b] = testf()
b = 20.
a = 10.
/*
EZ
function [a,b] = testf()
if 5 > 3 then
[a,b] = return(1,2)
end
[a,b] = (10,20)
endfunction
/*
--> [a,b] = testf()
b = 20.
a = 10.
/*
V
v
v
V
V
AG
V
v
V
v
return {100,200,300}.V
v
function [ret, msg] = interpLagrangePoly(x, y, vname)
n = size(x, 1)
if n <> size(y, 1) then
[ret, msg] = ([], "size(x) != size(y)")
return
end
p1 = poly(0, vname)
b = ones(n, 1)
for j = 1 : n do
for m = 1 : n do
if m <> j then
b(j) = b(j) * (p1 - x(m)) / (x(j) - x(m))
end
end
end
ret = sum(y' * b)
msg = "ok"
endfunction
v
AG
v
n = 500
[a, b] = (-5, 5)
linspaceNodes = linspace(a, b, n)'
chebyshevNodes = (1/2*(a+b) + 1/2*(b-a)*cos((2*(1 : n) - 1) * %pi/2/n))'
xdataInterp = linspaceNodes
ydataInterp = targetFunc(xdataInterp)
tic()
[newtonPoly, msg] = interpNewtonPoly(xdataInterp, ydataInterp, "x")
newtonTime = toc()
disp(newtonTime, "newtonTime = ")
tic()
[lagrangePoly, msg] = interpLagrangePoly(xdataInterp, ydataInterp, "x")
lagrangeTime = toc()
disp(lagrangeTime, "lagrangeTime = ")
ИБ
OA
FO