/********************************************/
/*           Program Runge_Kutta_4_Orden    */
/********************************************/


#include 
#include 
#include 

float Ecuacion( float Xe, float Ye);
void Lee_datos(void);

	float  Xo, Xf;
	float  Xant, Yant;
	float  Ynue;
	float  Fx;
	float  h;
	int    N, i;
	float  K1,K2,K3,K4;

/* Programa Principal */


int main(void)

{
  Lee_datos();
  printf("\n===========================================================================");
  printf("\n i      Xi       K1         K2        K3        K4        Fx        Yi");
  printf("\n===========================================================================");
  Xant = Xo;
  Yant = Fx;
  i=0;
  printf("\n%3d %10.4f                                             %10.4f",i,Xant,Fx);
  while (Xant < Xf )
    {
        K1   = Ecuacion(Xant,Yant);
		  K2   = Ecuacion(Xant+h/2,Yant+h*K1/2);
		  K3   = Ecuacion(Xant+h/2,Yant+h*K2/2);
		  K4   = Ecuacion(Xant+h,Yant+h*K3);
		  Fx   = (K1 + 2*K2 + 2*K3 + K4)/6;
		  Ynue = Yant + h*Fx;
		  Xant = Xant + h;
        Yant = Ynue;
		  i+=1;
		  printf("\n%3d%10.4f%10.4f%10.4f%10.4f%10.4f%10.4f%10.4f",i,Xant,K1,K2,K3,K4,Fx,Ynue);
    }
  printf("\n===========================================================================");
  getche();
}

void Lee_datos(void)

  {
	 clrscr();
	 printf("\n Dar el Valor inicial de Xo -> ");
	 scanf("%f",&Xo);
	 printf("\n Valor inicial para Fx(Xo)  ->");
	 scanf("%f",&Fx);
	 printf("\n Dar el Valor Final  de Xf  -> ");
	 scanf("%f",&Xf);
	 printf("\n Tama¤o del incremento (h)  ->");
	 scanf("%f",&h);
  }

/*  Calcula el valor de la Ecuacion Diferencial Ordinaria */

float Ecuacion( float Xe, float Ye)

/* Problema 9.12
 Pag. 322
 Metodos  Numericos.
 de Shoichiro Nakamura */

{
	return 1/(300*900*0.001)*( 3000-(0.8*0.0000000567*(pow(Ye,4)-pow(298,4)))-30*0.25*(Ye-298));
/*	return Xe*Xe;*/
}


    Source: geocities.com/siliconvalley/pines/7894/metodos

               ( geocities.com/siliconvalley/pines/7894)                   ( geocities.com/siliconvalley/pines)                   ( geocities.com/siliconvalley)