C/Visual C - Problema con exponentes

   
Vista:

Problema con exponentes

Publicado por Gab (1 intervención) el 18/09/2007 03:25:04
Hola, e estado tratando de crear un pequeño programa de c++ que me asignaron el cual le pide al usuario una base y un exponente y luego se elevan. Obligatoriamente tengo que hacerlo utilizando un for statement dentro de main y que este for llame a una funcion de nombre Producto la cual multiplica dos numeros. Hasta hora esto es lo que e logrado hacer:

void main()
{
cout << "Entre la base:";
cin >> base;
cout << endl;
cout << "Entre el exponente:";
cin >> exponente;
cout << endl;

resultado=1;

for(int i=1; i<exponente; i++)
{
resultado*=Producto(base,base);
}

cout<< "La potencia es: " << resultado << endl << endl;
system("pause");
}


//funcion que multiplica dos numeros reales
double Producto(double a, double b)
{
return a * b;
}

Cualquier ayuda que me podrian dar se los agradeceria.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema con exponentes

Publicado por Nelek (818 intervenciones) el 18/09/2007 15:09:05
Hola, un par de cositas.

antes de llamar al for... haz un par de evaluaciones y luego un par de correciones. No ibas mal, pero

Con tu version

resultado *= Producto (base, base) --> resultado = resultado * Producto (base, base)

en el caso de base 2 y exponente 3 lo que estabas haciendo era....

i = 1 --> resultado = 1*(2*2) = 4
i = 2--> resultado = 4*(2*2) = 16
i = 3--> resultado = 16*(2*2) = 64

simplemente cambia esto que te pongo abajo...

if (exponente < 0)
cout << "Exponente no valido";

else if (exponente == 0)
resultado = 1;

else
{
resultado = 1;
for (int i = 1; i <= exponente; i++)
{
resultado = Producto (resultado, base);
}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar