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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  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 2,661 veces)
Mudereded401

Desconectado Desconectado

Mensajes: 118


:$


Ver Perfil
Duda con Calculo errado
« 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?




En línea

Pero aunque los que sepan me digan que no, yo sé muy bien que existe el lado oscuro del sol. – El lado soleado de la calle
K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: Duda con Calculo errado
« Respuesta #1 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.


En línea

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

Desconectado Desconectado

Mensajes: 118


:$


Ver Perfil
Re: Duda con Calculo errado
« Respuesta #2 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
En línea

Pero aunque los que sepan me digan que no, yo sé muy bien que existe el lado oscuro del sol. – El lado soleado de la calle
Tachikomaia


Desconectado Desconectado

Mensajes: 1.201


Superhacker (es broma xD )


Ver Perfil
Re: Duda con Calculo errado
« Respuesta #3 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 +?
En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: Duda con Calculo errado
« Respuesta #4 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.
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 4,337 Último mensaje 2 Julio 2004, 22:15 pm
por soplo
duda con calculo « 1 2 3 »
Programación Visual Basic
::: Devil ::: 20 5,927 Último mensaje 17 Diciembre 2008, 19:45 pm
por ::: Devil :::
Problemas con calculo!
Java
Debci 2 4,281 Último mensaje 17 Marzo 2009, 18:54 pm
por Sk9ITk5Z
Calculo Integral
Java
Mr.LInk 5 12,422 Último mensaje 19 Diciembre 2009, 15:04 pm
por egyware
Duda acerca del calculo de combinaciones de numeros y letras en vb.net 2010
.NET (C#, VB.NET, ASP)
arturoro 5 4,006 Último mensaje 20 Diciembre 2015, 07:33 am
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines