l valor de retorno de pow () se redondea hacia abajo si se asigna a un entero
Estoy usando lapow
funciona en C y almacena el valor de retorno en un tipo entero. vea el fragmento de código a continuación:
for (i = 0; i < 5; i++){
val = (int)pow(5, i);
printf("%d, ", val);
}
aquíi
yval
son enteros y la salida es1, 5, 24, 124, 624
. Creo que esto se debe a que un float 25 se trata como 24.99999 ... que se redondea a 24 en la asignación a un entero.
¿Cómo puedo pasar esto si todavía necesito almacenar el valor de retorno en un int?