function y=ojlerm1(imef,h)
% Funkcija y=ojler(imef,h) resava pocetni problem
% y'=f(x,y), x\in[x0,xm]
% y0=y(x0)
% koristeci prvu modifikovanu Ojlerovu metodu
%
% Ulazni podaci:
% imef - promenljiva koja sadrzi ime fajla (string) u kome su ulazni
% podaci y0,x0,xm, f(x,y)
% h - korak integracije
% Izlazni podatak:
% y - priblizno resenje
%
% Test: y=ojler('primer1',0.5)
%close all % zatvori sve grafike korisno za desktop varijantu
run(imef) % ucitaj skript fajl, tj. pocetni problem
%% formiranje mreze
x=x0:h:xm; % formiramo ravnomernu mrezu
n=length(x); % duzina mreze
%% inicijalizacija
y=zeros(1,n); % incijalizacija aproksimacije
y(1)=y0; % dodeljujemo pocetnu vrednost
%% iteracije
for j=1:n-1
yp=y(j)+h*f(x(j),y(j));
y(j+1)=y(j)+h/2*(f(x(j),y(j))+yp);
 %prva modifikovana Ojlerova metoda
end
%% grafik aproksimacije
if nargout==0 % ako smo funkciju pozvali bez izlaznih argumenata, onda neka isctra grafik
plot(x,y, '-or')
end
 % u isom grafickom prozoru iscrtavamo i grafik tacnog resenja
hold on
x=linspace(x0,xm);
plot(x,ye(x), 'b')
legend('aproskimacija', 'tacno')
hold off
