Estoy realizando un programita en c q realiza el metodo sttefensen y tengo una duda practicamente tonta, pero que a pesar de los tutoriales no entiendo como resolver.
este es el codigo:
-----------------------------------------------------------------------------------------------------------
/* Programa: Metodo Steffensen
Carlos Delgado 03-2012 */
#include <stdio.h>
#include <math.h>
int main ()
{
/* Indica Variables */
float a,b,c,d,e,g,xn,ea,iteracion;
/* Indica cuerpo del proceso */
printf("Programa de metodo steffensen\n");
printf("ingrese la variable a:");
scanf("%f",&a);
/*Indica resultados*/
iteracion = 0;
/*formula steffensen*/
b = (a*a*a)-8;
c = a+b;
d = (c*c*c)-8;
xn = a - ((b*b)/(d+b));
/*error aproximado*/
e = ((xn-a)/xn)*100;
g = (e*e);
ea = sqrt(g);
printf("El resultado de la formula steffensen es %f\n" ,xn);
printf("El error aproximado es %f\n" ,ea);
if (ea <= 1)
{
printf("Perfecto, se ajusta y ya no se debe iterar\n");
printf("El total de iterasiones fue %f\n" ,iteracion);
}
else
{
printf("error, se debe seguir iterando\n");
iteracion = iteracion +1;
xn = a;
}
getchar();
getchar();
return 0;
}
--------------------------------------------------------------------
Yo quiero que en la parte del else, vuelva a realizar la parte que dice /*formula steffensen*/ pero con el nuevo valor, pero no se como colocar que vuelva a resolver la formula
Primero, si necesitas agregar
Primero, si necesitas agregar información arriba está la opción Editar, no es necesario que agregues comentarios.
Bien, atendiendo a lo que dijiste en tu primer comentario, sería algo como...
Si quieres contar las iteraciones, inicializa una variable fuera del bucle y dentro del mismo pones variable++; y la muestras al final ;)
Mil gracias por tu ayuda, asi
Mil gracias por tu ayuda, asi me quedo el codigo:
Gracias, voy a ver si esto me
Gracias, voy a ver si esto me ayuda y en un rato coloco el codigo resuelto
no se si tambien se necesita
no se si tambien se necesita un DO-WHILE
En palabras mas sencillas, yo
En palabras mas sencillas, yo quiero que el programa me lea un dato "a" que mediante una formula me va a dar un resultado "b", despues ese resultado "b" lo voy a introducier en otra formula que me va a dar un resultado "c".
Si c es menor o igual a 1 termina el programa, si no, vuelve desde el inicio, con la diferencia de que esta ves el resultado de "b" va a ser mi nuevo "a".