Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Ensslin

#1
//      nraices.c
//

#include <stdio.h>
#include <stdlib.h>
#include <math.h>


int main(int na, char *arg[])
{
   double v;
   double n;
      
   
    if (na < 3) {
        fprintf(stderr, "Introduce radicando y número\n"
               "Así: \n"
               "\t%s <radicando> <numero>\n"
               "\n\ny yo te daré su raiz enésima \n\n"

                ,arg[0]);
              exit(-1);
       return (-1);
   }

    v = atof(arg[2]);
    n = atof(arg[1]);


    if (v<= 0)
    {
       fprintf(stderr, "El número debe ser positivo.\n");
       exit(-1);
    }
     if (n<= 1)
    {
       fprintf(stderr, "El radicando debe ser mayor de 1.\n");
       exit(-1);
    }


double pow(double x, double n);


double f(double x)
{
   
   return pow(x, n)-v;              //Función cuya raíz busco

}

double Df(double x)
{
   
    return n*(pow(x, (n-1)));           //Derivada de la función f(x)

}


double newton(double semilla, double tolerancia)
{
   double x1, x2;
   double dif;

   x1 = semilla;
   do {
      x2 = x1 - f(x1)/Df(x1);
      dif = fabs(x2-x1);
      x1 = x2;
   } while (dif > x2*tolerancia);

   return x1;
}

   double raiz = newton(1.0, 1e-9);
   printf("La raíz enésima es %17.12f\n",raiz );


   return 0;
}
________________________________

Tengo que hacer un programa que calcule raices n-ésimas pero no logro que me compile, los errores que me da el compilador de geany son :
" /tmp/ccYhZhGT.o: In function `f.3225':
nraices.c:(.text+0x23): undefined reference to `pow' "
" /tmp/ccYhZhGT.o: In function `Df.3228':
nraices.c:(.text+0x184): undefined reference to `pow' "


collect2: ld returned 1 exit status

Espero que podáis ayudarme, ya que a mí no se me ocurre nada--
Gracias