Código C++:
Ver original
#include <iostream> using namespace std; int main () { int a = 2; double x = 0.4, y = 1.2; cout << a + int(y*y) << endl << double(1 + int(2.5) * a) + .3 << endl << int(3.9) + 3 * int(x) + int(double(a) + 1.5) << endl << int(double(a) / x) << endl << double(a / int(y) + 1) << endl << double(int(x) / double(a + 1)) << endl << endl ; }
realicé las operaciones manualmente y todos los resultados coinciden menos uno
int(double(a) / x) // manualmente me da 5 y al ejecutar el programa me da 4
ya lo separé por pasos y cuando hago:
double (a) / x
me da como resultado 5
si de ahí lo convierto a entero,
int(double(a) / x)
y siendo 5 un entero, pasa a ser 4, porque? no se.
esto realmente me parte la cabeza jeje
PD al cambiar el valor de "a" no tuve ningún problema
ojalá me puedas ayudar y de antemano gracias!