Eulerovou metódou nájdite riešenie problému:
            y´=(xy^2), y(0)=1

Zadanie problému, pravá strana, počiatočná podmienka,  krok metódy a koncový bod

f[x_,y_]:=x*y^2
h=0.05;
x0=0;
y0=1;
koniec=1;

Funkcia pre algoritmus Eulerovej metódy a pre presné riešenie

Numries[x_,y_,f_,h_]:=y+h*f[x,y]
Pres[x_]:=2/(2-x^2)

Počiatočná podmienka ako nulté riešenie a výpočet počtu krokov

x[0]=x0;
y[0]=y0;
n=koniec/h;

Samotný algorimtus výpočtu, 
zapísanie výsledkov do tabuliek,
samotné numerické výsledky spolu, 
numerické, presné výsledky a odchýlky 
maximová chyba

Do[{x[i]=x0+i*h, y[i]=Numries[x[i-1],y[i-1],f,h]}, {i,1,n,1}]
data=Table[{x[i],y[i]},{i,0,n}];
data1=Table[Abs[(y[i]-Pres[x[i]])],{i,0,n}];
vysledky=Table[{x[i],y[i],Pres[x[i]],Abs[(y[i]-Pres[x[i]])]},{i,0,n}];
maxerror=Max[data1];

Tlač výsledkov

Print["        hodnota x  numerické riešenie presné riešenie odchýlka"]
PaddedForm[TableForm[vysledky],{12,4}]

graf presného riešenia

g=Plot[Pres[x],{x,0,1}, PlotRange->{{0,1},{0,2}}, PlotStyle->{ RGBColor[1,0,0],Thickness[0.005]}]

graf numerického riešenia

graf1=ListPlot[data, PlotRange->{{0,1},{0,2}},PlotStyle-> {RGBColor[0,0,1]} ]

Porovnanie presného a numerického riešenia

Show[g,graf1]

h=0.005;
n = koniec/h;
Do[{x[i]=x0+i*h, y[i]=Numries[x[i-1],y[i-1],f,h]}, {i,1,n,1}]
data=Table[{x[i],y[i]},{i,0,n}];
data1=Table[Abs[(y[i]-Pres[x[i]])],{i,0,n}];
vysledky=Table[{x[i],y[i],Pres[x[i]],Abs[(y[i]-Pres[x[i]])]},{i,0,n}];
maxerror=Max[data1];
Print["        hodnota x  numerické riešenie presné riešenie odchýlka"]
PaddedForm[TableForm[vysledky],{12,4}]

graf2=ListPlot[data, PlotRange->{{0,1},{0,2}},PlotStyle-> {RGBColor[0,0,0],PointSize[0.01]}]

Show[g,graf1,graf2]

Výpočet EOC rád chyby

h=0.001;
Do[{hz=h/j,
n=koniec/hz,
Do[{x[i]=x0+i*hz, y[i]=Numries[x[i-1],y[i-1],f,hz]}, {i,1,n,1}],
data=Table[Abs[(y[i]-Pres[x[i]])],{i,0,n}],
error[j]=Max[data]},{j,1,2,1}]

a1=error[1]
b1=error[2]
rad=N[Log[2,a1/b1]]

sol4=DSolve[{a'[t]==a[t]+Cos[t*a[t]],a[0]== 0},a[t],t]

sol5=NDSolve[{a'[t]==a[t]+Cos[t*a[t]],a[0]== 0},a,{t,0,2*Pi}]

zmathem=Plot[{a[t]/.sol5},
{t,0,2*Pi}]

f[x_,y_]:=y+Cos[y*x]
h=N[2*Pi/100];
x0=0;
y0=0;
koniec=2*Pi;

Numries[x_,y_,f_,h_]:=y+h*f[x,y]
x[0]=x0;
y[0]=y0;
n=koniec/h;
Do[{x[i]=x0+i*h, y[i]=Numries[x[i-1],y[i-1],f,h]}, {i,1,n,1}]
data=Table[{x[i],y[i]},{i,0,n}];

graf2=ListPlot[data,PlotStyle-> {RGBColor[1,0,0],PointSize[0.02]}]

Show[zmathem, graf2]