Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales
Autor
|
Tema: Problema Programa que eleva un numero a una potencia (Leído 905 veces)
|
prometheus48
Desconectado
Mensajes: 170
Making a Distro...
|
Hola,
Quería hacer un programa que eleva un numero cualquiera a cualquier potencia. Se que se puede hacer incluyendo la libreria math.h y usando la funcion pow.
Sé que también se puede hacer con un bucle, haciendo que multiplique ese numero tantas veces sea la variable X ...
Pero me preguntaba si hay alguna expresión matemática para hacerlo, por ejemplo, tipo ( a*b ) + ( x% ( c* ( a/2 ) ) )....
Estuve pensando todo el día ( ayer ), pero no se me ocurrió nada, se lo pregunte a varios amigos y me dijeron que era imposible, pero nada lo es ¿no?.
Salu2!
|
|
|
|
|
En línea
|
"Si tú tienes una manzana, y yo otra, y las intercambiamos, tu sigues teniendo una manzana, y yo sigo teniendo una manzana. Pero, si tu tienes una idea, y yo otra, y nos las intercambiamos, tu tienes dos ideas, y yo tengo dos ideas" The knowledge is free
|
|
|
|
|
prometheus48
Desconectado
Mensajes: 170
Making a Distro...
|
Gracias por la respuesta.
Pero no dice nada de una expresión, explica pero no pone una funcion, o al menos eso creo.
Intentare leerlo otra vez.
Salu2!
|
|
|
|
|
En línea
|
"Si tú tienes una manzana, y yo otra, y las intercambiamos, tu sigues teniendo una manzana, y yo sigo teniendo una manzana. Pero, si tu tienes una idea, y yo otra, y nos las intercambiamos, tu tienes dos ideas, y yo tengo dos ideas" The knowledge is free
|
|
|
BlackZeroX (Astaroth)
Wiki
Desconectado
Mensajes: 2.831
I'Love...!¡.
|
mmm...  Almenos que uses ASM (Quizas)... pero el procesador va a hacer algo similar... Dulces Lunas!¡.
|
|
|
|
|
En línea
|
|
|
|
Oblivi0n
Desconectado
Mensajes: 201
Odio las ranas.
|
Date cuenta que la potencia es el numero de veces que se multiplica el numero. Es decir 2 4 = 2 x 2 x 2 x 2 Esto, en C al menso, es imposible de hacer con una sola expresión. La manera sencilla seria un bucle for tal que: int sum = 1; for(int n = 0;n<potencia;n++) { sum *= base } Donde potencia seria el termino "b" y base , la base ( A b ) Saludos.
|
|
|
|
|
En línea
|
|
|
|
LearningSpanishProgrammer
Desconectado
Mensajes: 67
|
Puede limitar el problema:
Solo usando: 2
Entonces: m^n => m << (n - 1) Pero "n" debes ser: n >= 1
Puedes hacer mucho mucho mas! Pero no voy a hablar, buena suerte!
Protip: 32 = 2^5 32^2 = (2^5)^2 = 2^10
|
|
|
|
« Última modificación: 5 Enero 2012, 01:42 por LearningSpanishProgrammer »
|
En línea
|
Estoy aprendiendo español, y tu estas aprendiendo programación
|
|
|
prometheus48
Desconectado
Mensajes: 170
Making a Distro...
|
Me podrias explicar eso último que has hecho ahí?
Salu2!
|
|
|
|
|
En línea
|
"Si tú tienes una manzana, y yo otra, y las intercambiamos, tu sigues teniendo una manzana, y yo sigo teniendo una manzana. Pero, si tu tienes una idea, y yo otra, y nos las intercambiamos, tu tienes dos ideas, y yo tengo dos ideas" The knowledge is free
|
|
|
xiruko
Desconectado
Mensajes: 51
|
Tan solo ha escrito una propiedad de las potencias:
(a^b)^c=a^(b*c)
En el ejemplo que ha escrito el:
32=2^5, por lo que 32^2=(2^5)^2=2^(5*2)
|
|
|
|
|
En línea
|
|
|
|
BlackZeroX (Astaroth)
Wiki
Desconectado
Mensajes: 2.831
I'Love...!¡.
|
Leete la pagina que te puse y lo entenderas... tambien lee algo sobre operaciones Binarias, igual y consigues algo...
Dulces Lunas!¡.
|
|
|
|
|
En línea
|
|
|
|
|
|