function [euestimate, realval, error] = eu(f, df, y0, t0, tf, h)

N = abs((t0 + tf)/h);

baller = zeros(N, 3);

t = t0;

baller(1, 1) = y0;

baller(1, 2) = f(t0, y0);


for j=2:N+1
    
    if j == 2
        temp = baller(1, 1);
    else 
        temp = baller(j - 1, 1);
    end
      
    baller(j, 1) = temp + h.*(df(t, j));
    
%     baller(j, 2) = f(t, j);
%     
%     baller(j, 3) = (f(t, j) - baller(j, 1));
   
    t = t + h;    
      
end

base = 0;

for j=1:N+1
    
    baller(j, 2) = f(base, j);
    
    baller(j, 3) = abs(((f(base, j) - baller(j, 1))/(f(base, j))) * 100);
   
    base = base + h;      
end

euestimate = baller(N+1, 1);
realval = baller(N+1, 2);
error = baller(N+1, 3);