Estoy seguro de que esto no es tan difícil como me imagino.¿Forma fácil de calcular potencias enteras de 2 en C#?
Me gustaría utilizar algo equivalente a Math.Pow(double, double)
pero dando como resultado un número entero. Me preocupan los errores de redondeo con los puntos flotantes.
Lo mejor que puedo llegar a decir:
uint myPower = 12;
uint myPowerOfTwo = (uint)Math.Pow(2.0, (double)myPower);
pensé en esto:
uint myPowerOfTwo = 1 << myPower; // doesn't work
pero me sale el error de que el operador "< <" no se puede utilizar con operandos de tipo int
o
y uint.
¿Alguna sugerencia? Gracias como siempre.
OK, parece funcionar! ¿Pero por qué el mensaje de error de que el operador "<<" no se puede usar con operandos de tipo int o uint? ¿No acabo de usar un int? – John
(para el OP) Y emitido como un último paso si es necesario –
@John ¿está seguro de que no dice * y *? significado: la combinación? –