Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- close all
- %vstupom su: hodnota x, pre ktoru to pocitame, a polia X a fX (zadane hodnoty x a zadane f(x) k danym x )
- %vystupom je suma (podla vzorca)
- function sum = lagrange(x, X, fX)
- sum = 0;
- ord = size(X)(2);
- for i = 1:ord
- res = fX(i);
- for j = 1:ord
- if j ~= i
- numerator = (x - X(j));
- denominator = (X(i) - X(j));
- if denominator ~= 0
- res .*= (numerator / denominator);
- end
- end
- end
- sum += res;
- end
- end
- %vstupy zo zadania
- input_X = [1 2 4 8 16];
- input_fX = [0 1 2 3 4];
- %aby plot vzdy ukazal, vstupy + nieco malo navyse
- step = 0.1;
- from = input_X(1) - 10*step;
- to = input_X(end) + 10*step;
- %vykreslenie
- n = from:0.1:to; %% TOTO su tie x co davas do L ..
- plot(n, lagrange(n, input_X, input_fX))
- hold on
- plot(input_X,input_fX, '*')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement