Logaritmo sin librería Math.t

Iniciado por norris, 5 Noviembre 2012, 14:14 PM

0 Miembros y 1 Visitante están viendo este tema.

norris

Hola, muy buenas. El código para hallar Logaritmo(base n) de un numero m es el siguiente. Ahora me piden un código para hallar lo mismo pero sin usar la librería math.h

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

float logaritmo(double argumento, double base){
return log10(argumento)/log10(base);
}

int main() {
double n, base, resultado;
printf ("Ingrese número: ");
scanf("%lf", &n);
printf ("Ingrese base: ");
scanf("%lf", &base);
resultado = logaritmo (n, base);
printf ("Resultado: %f", resultado);
return 0;
}


Gracias de antemano

claudioxis

tengo la misma duda, si alguien llego a la solución por favor me explica de ante mano gracias

claudioxis

haber voy hacer otra pregunta amigo se puede hacer el logaritmo de x en base 2 sin la librería math y si se puede como se hace?

diskontrol

Un método sencillo es el de dividir y elevar (aunque seguro que tiene otro nombre :-D).

Coges el número y lo divides por la base hasta que sea menor que ésta. El número de divisiones es la parte entera del logaritmo. Después coges el resultado de la última división y lo elevas a la base, vuelves a dividir hasta que sea menor y obtienes el primer decimal. Repites hasta que tengas los decimales que quieras.

Saludos.
Siempre ten tus cosas cuando las necesites con @Dropbox. ¡Una cuenta de 2 GB es gratis! http://db.tt/YxRhsCI

durasno

Hola! creo q diskontrol se refiere a: http://www.youtube.com/watch?v=AqeLDG7XM8g

Igual me parece que no es tan facil de esa manera. SIno creo q tambien se puede usando series(pero aca necesitas un poco mas de conocimiento matematico).. EN fin fijate si podes hacerlo de alguna manera


Saludos

PD: busca si hay otros metodos mas sencillos para poder programar
Ahorrate una pregunta, lee el man

diskontrol

Cita de: durasno en  1 Abril 2013, 03:03 AM
...Igual me parece que no es tan facil de esa manera...

Si hacer un bucle con una comparación que haga divisiones y una potencia te parece difícil....
Siempre ten tus cosas cuando las necesites con @Dropbox. ¡Una cuenta de 2 GB es gratis! http://db.tt/YxRhsCI

MeCraniDOS

(Solución Tonta) Abres math.h con el bloc de notas, te copias la función del logaritmo y la pones en tu programa, listo, ya no tienes que llamarla...  :silbar: :silbar:

Saludos
"La física es el sistema operativo del Universo"
     -- Steven R Garman

rir3760

Cita de: MeCraniDOS en  1 Abril 2013, 13:40 PM(Solución Tonta) Abres math.h con el bloc de notas, te copias la función del logaritmo y la pones en tu programa, listo, ya no tienes que llamarla
El encabezado <math.h> solo contiene el prototipo de la función.

Un saludo
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language

NeoB

Solo hay que buscar un poco en google:
http://www.raspberryginger.com/jbailey/minix/html/lib_2math_2log_8c-source.html
He de decir que no lo he aprobado, pero si puedo contribuir, ahí va.

durasno

CitarSi hacer un bucle con una comparación que haga divisiones y una potencia te parece difícil....
ok ok entonces no le va a costar mucho hacerlo, mejor para norris.. de todas formas contamos con toda tu experiencia  :)
Ahorrate una pregunta, lee el man