Ten en cuenta que en las ciencias cualquier problema suele tener diferentes soluciones, pero nosotros mostramos lo más óptimo y eficiente.
Solución:
Lo que podrías hacer es forzarlo a dividir a
y b
como dobles así:
int x = (int) (((double) a / (double) b) * 100);
La división de enteros no tiene fracciones, por lo que 500 / 1000 = 0.5 (¡eso no es un entero!) que se trunca al entero 0. Probablemente quieras
int x = a * 100 / b;
Parece que no está escribiendo correctamente sus variables; dos divisiones enteras dan como resultado un número entero, no un flotante o un doble. Por ejemplo:
(int)3 / (int)5 = 0
(float)3 / (float)5 = 0.6
Reseñas y valoraciones
Eres capaz de añadir valor a nuestra información contribuyendo tu experiencia en las ilustraciones.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)