155GIT1 / 8. cvičení: Porovnání verzí
mBez shrnutí editace |
mBez shrnutí editace |
||
Řádek 4: | Řádek 4: | ||
== Náplň == | == Náplň == | ||
# drobné | # drobné úlohy | ||
== Ukázky == | == Ukázky == | ||
Řádek 25: | Řádek 25: | ||
end | end | ||
% | % výpočet pro každý prvek daného vektoru samostatně | ||
for i=1:length(x) | for i=1:length(x) | ||
% start iterace pro i- | % start iterace pro i-tý vstupní prvek | ||
y0 = 100; % | y0 = 100; % vkládám fiktivní hodnotu, kterou x na vstupu nikdy nemůže nabýt | ||
% 1.iterace | % 1.iterace | ||
n = 1; | n = 1; | ||
Řádek 38: | Řádek 38: | ||
y = y0 + (-1)^(n+1) * x(i)^(2*n-1) / (2*n-1); | y = y0 + (-1)^(n+1) * x(i)^(2*n-1) / (2*n-1); | ||
end | end | ||
% | % uložení vypočtené hodnoty do výstupní proměnné | ||
arctgx(i) = y; | arctgx(i) = y; | ||
fprintf('Pocet iteraci vypoctu: %d\n',n) | fprintf('Pocet iteraci vypoctu: %d\n',n) |
Verze z 13. 4. 2023, 04:02
Uživatelské funkce
Náplň
- drobné úlohy
Ukázky
Drobné úlohy
Funkce pro výpočet nekonečné řady do zadané přesnosti (příklad iterativního výpočtu)
např. výpočet funkce arctg(), viz Taylorova řada:
function [arctgx] = arctg(x,mez)
% vypocet funkce arctg rozvojem v radu do zadane presnosti
% IN: x ... vektor argumentu funkce
% mez ... zadana presnost vypoctu
% OUT: arctgx ... vektor vypoctenych uhlu z intervalu <-pi/2,pi/2>
if any(x > 1) | any(x < -1)
error('arctg: Vstupni hodnoty musi byt z intervalu <-1,1>.')
end
% výpočet pro každý prvek daného vektoru samostatně
for i=1:length(x)
% start iterace pro i-tý vstupní prvek
y0 = 100; % vkládám fiktivní hodnotu, kterou x na vstupu nikdy nemůže nabýt
% 1.iterace
n = 1;
y = x(i);
while abs( y-y0 ) > mez
% n-ta iterace
n = n+1;
y0 = y;
y = y0 + (-1)^(n+1) * x(i)^(2*n-1) / (2*n-1);
end
% uložení vypočtené hodnoty do výstupní proměnné
arctgx(i) = y;
fprintf('Pocet iteraci vypoctu: %d\n',n)
end