
Hallar algoritmo de un número mediante sumas y divisiones
Publicado por Alejandro Caro (4 intervenciones) el 17/07/2012 22:02:48
tengo esta siguiente consigna:
Escriba un programa en C que reciba como parámetros dos enteros b y n y devuelva como resultado la parte entera del logaritmo de n en base b. Dicho resultado es un entero k que cumple lo siguiente: b^k <= n < b^(k+1) El algoritmo sólo puede realizar divisiones y sumas. Asuma que n > 0 y b > 1.
Respondo con lo siguiente:
int main()
{
int resultado;
int numero, base, contador = 0;
printf("Ingrese un n£mero para calcular el logaritmo");
scanf("%d", &numero);
printf("Ingrese la base del logaritmo");
scanf("%d", &base);
do{
contador++;
resultado= numero/base;
}while(resultado >= base);
printf ("El logaritmo de %d en base %d es %d", numero, base, resultado);
return 0;
}
y me dá siempre el resultado 0.
¿Donde está el error?
Escriba un programa en C que reciba como parámetros dos enteros b y n y devuelva como resultado la parte entera del logaritmo de n en base b. Dicho resultado es un entero k que cumple lo siguiente: b^k <= n < b^(k+1) El algoritmo sólo puede realizar divisiones y sumas. Asuma que n > 0 y b > 1.
Respondo con lo siguiente:
int main()
{
int resultado;
int numero, base, contador = 0;
printf("Ingrese un n£mero para calcular el logaritmo");
scanf("%d", &numero);
printf("Ingrese la base del logaritmo");
scanf("%d", &base);
do{
contador++;
resultado= numero/base;
}while(resultado >= base);
printf ("El logaritmo de %d en base %d es %d", numero, base, resultado);
return 0;
}
y me dá siempre el resultado 0.
¿Donde está el error?
Valora esta pregunta


0