Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

[Duda] ¿Por qué toma el valor menor con el casting de valores?

mi duda es, aunque el resultado del cálculo en Fahrenheit es de 33,8 cunado se hace el casting de valores se toma como 33, ¿No debería ser 34 por que se ha cerca más al número resultado (33,8)?

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

1 respuesta
solución!

Cuando se convierte un número de punto decimal (float o double) a un número entero (int), simplemente se elimina la parte decimal, dejando solo la parte entera. Esto se debe a cómo esta definido la conversión de tipos en muchos lenguajes de programación.

Si deseas redondear un número de punto flotante al entero más cercano, necesitarías usar una función de redondeo específica como Math.round() en Java

int temperaturaCelcius = 1;
float temperaturaFahrenheit = (temperaturaCelcius*1.8) +32;
int fahrenheitSinDecimal = Math.round(temperaturaFahrenheit);
System.out.println(fahrenheitSinDecimal); // Esto imprimirá el número redondeado y no solo eliminara la parte decimal