Título: Duda con Calculo errado Publicado por: Mudereded401 en 20 Octubre 2020, 22:56 pm Hola! Quizás sea una Duda estúpida, Pero estoy haciendo un programa para calcular Operaciones combinadas, Que son las que llevan {} () []. PERO Ocurrió algo al probarla, y es que me perdí en el orden para realizarla xd. Quiero decir, que intenté este problema:
-18 * (+6) + (-4) * 9 PERO el programa me dió esto: -1008. Y quedé en duda porque no debería haber dado -144??????? no debería haber resuelto primero el "-18 * (+6)", luego el "(-4) * 9" y sumar los 2 resultados? Título: Re: Duda con Calculo errado Publicado por: K-YreX en 20 Octubre 2020, 23:12 pm Efectivamente, siguiendo el orden de preferencia de los operadores, el resultado debería ser -144 y no -1008.
Parece que tu programa hace las operaciones según las ve pues si haces: (-18 * 6 + (-4)) * 9 = -1008. Obviamente, sin ver el código es imposible ayudarte más. Título: Re: Duda con Calculo errado Publicado por: Mudereded401 en 20 Octubre 2020, 23:15 pm Efectivamente, siguiendo el orden de preferencia de los operadores, el resultado debería ser -144 y no -1008. Parece que tu programa hace las operaciones según las ve pues si haces: (-18 * 6 + (-4)) * 9 = -1008. Obviamente, sin ver el código es imposible ayudarte más. oo muchas gracias, eso era todo xd Título: Re: Duda con Calculo errado Publicado por: Tachikomaia en 21 Octubre 2020, 01:57 am ¿O sea que C o C++ hace las operaciones así sin tener en cuenta que * se aplica antes que +?
Título: Re: Duda con Calculo errado Publicado por: K-YreX en 21 Octubre 2020, 02:09 am No, por defecto toma la precedencia de operadores correctamente.
Supongo que en este caso estaba implementando un algoritmo propio que replicase ese comportamiento. |