URGENTE PRACTICA C
Publicado por JUAN (2 intervenciones) el 22/11/2007 09:05:51
HOLA A TODOS, ESTOY EN UNA PRACTICA Y TENGO QUE HACER EL METODO DE LA SECANTE.
YO TENGO ESTE METODO RESUELTO:
float f(float x);
float secante(float a, float b, float err);
int main(){
float a,b,err;
printf ("INTRODUZCA EL LIMITE SUPERIOR");
scanf("%f",&b);
printf("INTRODUZCA LIMITE INFERIOR");
scanf("%f",&a);
printf ("INTRODUZCA EL ERROR");
scanf("%f",&err);
printf ("\nRAIZ EN :\n %f",secante(a,b,err));
scanf("%f",&a);
}
float secante(float a, float b, float err)
{
float res,ant;
res=a;
do{
ant=res;
res=(a-(f(a)*(b-a)/(f(b)-f(a))));
a=b;
b=res;
}while(fabs((res-ant)/res)>err);
return res;
}
float f(float x){
int a=2;
return (pow(x,a)-2);
}
PERO EL PROBLEMA ES QUE ME HAN DADO ESTA CABECERA:
double secante ( double (*pf)(double),double a,double b,double err);
Y NO SER RESOLVERLO
YO TENGO ESTE METODO RESUELTO:
float f(float x);
float secante(float a, float b, float err);
int main(){
float a,b,err;
printf ("INTRODUZCA EL LIMITE SUPERIOR");
scanf("%f",&b);
printf("INTRODUZCA LIMITE INFERIOR");
scanf("%f",&a);
printf ("INTRODUZCA EL ERROR");
scanf("%f",&err);
printf ("\nRAIZ EN :\n %f",secante(a,b,err));
scanf("%f",&a);
}
float secante(float a, float b, float err)
{
float res,ant;
res=a;
do{
ant=res;
res=(a-(f(a)*(b-a)/(f(b)-f(a))));
a=b;
b=res;
}while(fabs((res-ant)/res)>err);
return res;
}
float f(float x){
int a=2;
return (pow(x,a)-2);
}
PERO EL PROBLEMA ES QUE ME HAN DADO ESTA CABECERA:
double secante ( double (*pf)(double),double a,double b,double err);
Y NO SER RESOLVERLO
Valora esta pregunta


0