Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/02/2013, 12:12
pepon01
 
Fecha de Ingreso: septiembre-2012
Ubicación: Lima
Mensajes: 46
Antigüedad: 12 años, 2 meses
Puntos: 4
Respuesta: pequeña duda

Intente arreglar tu programa masomenos queda asi:

Código:
#include<stdio.h>
#include<math.h>
#include<iostream>
 
float iteracion(float n1, float n);
int main()
{
    int c;
    float x1; 
    float Er=0.001;
    
          printf("Newthon Rapshon\n");
          printf("La ecuacion es e^5x\n");
          printf("\nEl Error relativo es de 0.001%");
          printf("\nTomando en cuanta que e=2.7182");
          printf("\n Escriva el valor de x para la funcion e^.5x\n");
          scanf("%f",&x1);
          iteracion(x1,Er);
std::cin.get();
 
return 0;
}
          float iteracion(float n1, float n)
          {
                float xi; 
                float fxi; 
                float ai; 
                float fai; 
                float deriv; 
                float fun; 
                float i=1; 
                float e1;
                float e=2.7182;
                xi=n1;
                fxi=e*pow(xi,0.5);
                    
                    while(i>=0.0001)
                    {
                    
                         deriv=(0.5*e)*pow(xi,0.5);
                         fun=e*pow(xi,0.5);
                         ai=xi-(fun/deriv);
                         fai=e*pow(ai,0.5);
                         i=fabs(((e1-ai)/e1)*100);
                         printf("\nXi=%2.8f f(Xi)=%2.8f \nXi+1=%2.8f f(Xi+1)=%2.8f\n",xi,fxi,ai,fai);
                         printf("\n el porcentaje de error es: %0.001f\n",i);
                         xi=ai;
                         fxi=fai;
                         e1=fabs(ai);
                         ai=0;
                         fai=0;
                    }    
          return ai;
          }
aunque no le veo mucho sentido a tu programa da flojera tener que revisar todo eso de metodos numericos