#include <stdio.h>
#include <math.h>
double f(double x,double y){
return(2*y/x+x*x*exp(x));
}
void main(){
double x0,y0,x1,y1,yp,yc,Yxn,h=0.1,k1,k2,k3,k4;
int N=11,n;
x0=1.0;
y0=0;
printf("Xn Yn Yxn\n");
for(n=1;n<N;n++){
x1=x0+h;
k1=f(x0,y0);
k2=f(x0+h/2,y0+h*k1/2);
k3=f(x0+h/2,y0+h*k2/2);
k4=f(x1,y0+h*k3);
y1=y0+h*(k1+2*k2+2*k3+k4)/6;
Yxn=x1*x1*(exp(x1)-exp(1));
printf("%lf %lf %lf\n",x1,y1,Yxn);
x0=x1;
y0=y1;
}
}