elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda con Calculo errado
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda con Calculo errado  (Leído 326 veces)
Mudereded401

Desconectado Desconectado

Mensajes: 41


.-.


Ver Perfil
Duda con Calculo errado
« en: 20 Octubre 2020, 22:56 »

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?




En línea

"Nunca regales un libro a quien no sabe leer. No sientas miedo en el desconcierto, Un mar en calma nunca hizo a un marinero experto. Nunca afiles tu bumerang y no te creas un doberman que se cree superman." -Roberto Musso
K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 799



Ver Perfil
Re: Duda con Calculo errado
« Respuesta #1 en: 20 Octubre 2020, 23:12 »

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.


En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
Mudereded401

Desconectado Desconectado

Mensajes: 41


.-.


Ver Perfil
Re: Duda con Calculo errado
« Respuesta #2 en: 20 Octubre 2020, 23:15 »

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
En línea

"Nunca regales un libro a quien no sabe leer. No sientas miedo en el desconcierto, Un mar en calma nunca hizo a un marinero experto. Nunca afiles tu bumerang y no te creas un doberman que se cree superman." -Roberto Musso
Tachikomaia

Conectado Conectado

Mensajes: 280



Ver Perfil
Re: Duda con Calculo errado
« Respuesta #3 en: 21 Octubre 2020, 01:57 »

¿O sea que C o C++ hace las operaciones así sin tener en cuenta que * se aplica antes que +?
En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 799



Ver Perfil
Re: Duda con Calculo errado
« Respuesta #4 en: 21 Octubre 2020, 02:09 »

No, por defecto toma la precedencia de operadores correctamente.
Supongo que en este caso estaba implementando un algoritmo propio que replicase ese comportamiento.
En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
103 - calculo
Ejercicios
Cobac 1 3,133 Último mensaje 2 Julio 2004, 22:15
por soplo
duda con calculo « 1 2 3 »
Programación Visual Basic
::: Devil ::: 20 3,441 Último mensaje 17 Diciembre 2008, 19:45
por ::: Devil :::
Duda acerca del calculo de combinaciones de numeros y letras en vb.net 2010
.NET (C#, VB.NET, ASP)
arturoro 5 2,198 Último mensaje 20 Diciembre 2015, 07:33
por Eleкtro
Cálculo a realizar
Programación General
Meta 0 163 Último mensaje 28 Julio 2020, 09:58
por Meta
Calculo niveles
.NET (C#, VB.NET, ASP)
Meta 7 1,117 Último mensaje 10 Septiembre 2020, 01:59
por Meta
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines