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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ejercicio Básico de Operadores en C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ejercicio Básico de Operadores en C  (Leído 1,322 veces)
palacio29

Desconectado Desconectado

Mensajes: 103


Ver Perfil
Ejercicio Básico de Operadores en C
« en: 14 Febrero 2017, 15:24 pm »

Hola

Tengo el siguiente código

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main()
  5. {
  6. double num=123456789.56;
  7. int x,r;
  8. x=num;
  9.  
  10. r=x%100000/1000/7;
  11.  
  12. printf("%d",r);
  13.  
  14.    return 0;
  15. }

La idea el ejercicio es que sepamos que operacion hay que ejecutar primero...Estuve leyendo sobre precedencia de operadores y se dice que de izquierda a derecha viene la multiplicacion, luego la division y luego el %.

El tema es que intento hacer todas las divisiones posibles ... osea 100000/1000 y luego ese resultado / 7 y luego hago el %....y me da cualquier cosa.
El resultado tiene que ser 8 pero no llego a ese resultado...algo estoy haciendo mal o nose porque operacion empezar..


En línea

palacio29

Desconectado Desconectado

Mensajes: 103


Ver Perfil
Re: Ejercicio Básico de Operadores en C
« Respuesta #1 en: 14 Febrero 2017, 15:43 pm »

Y metiendo paréntesis?

Código
  1. r=x%(100000/1000/7);

Saludos, ;)

Esta mal igual porque tendria que dar 8 y poniendo parentesis da 1.


En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.411


ASMático


Ver Perfil WWW
Re: Ejercicio Básico de Operadores en C
« Respuesta #2 en: 14 Febrero 2017, 15:56 pm »

Multiplicación, división y módulo están al mismo nivel. Luego, se ejecutan de izquierda a derecha.

Código:
123456789 % 100000 / 1000 / 7
Modulo
56789 / 1000 / 7
Entre 1000
56
Entre 7
8
En línea

palacio29

Desconectado Desconectado

Mensajes: 103


Ver Perfil
Re: Ejercicio Básico de Operadores en C
« Respuesta #3 en: 14 Febrero 2017, 19:46 pm »

Multiplicación, división y módulo están al mismo nivel. Luego, se ejecutan de izquierda a derecha.

Código:
123456789 % 100000 / 1000 / 7
Modulo
56789 / 1000 / 7
Entre 1000
56
Entre 7
8

Genial! ahora me quedo claro...pense que la multiplicacion y la division venia primero que el modulo.
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.411


ASMático


Ver Perfil WWW
Re: Ejercicio Básico de Operadores en C
« Respuesta #4 en: 14 Febrero 2017, 20:50 pm »

Para aclarar, que me olvidé: http://en.cppreference.com/w/c/language/operator_precedence
Ese es e orden. Los que están en el mismo grupo, se resuelven "a la vez" (siguiendo el orden izquierda-derecha o derecha-izquierda que aparece a la derecha)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda en ejercicio basico
.NET (C#, VB.NET, ASP)
The_Saint 2 1,360 Último mensaje 16 Abril 2013, 20:27 pm
por The_Saint
Ejercicio básico Python
Programación General
srg 3 1,508 Último mensaje 30 Octubre 2013, 01:46 am
por Mitsu
Ayuda con ejercicio basico en C « 1 2 »
Programación C/C++
MartaR95 11 4,131 Último mensaje 12 Diciembre 2016, 01:14 am
por MAFUS
Ejercicio basico con c++ (Ayuda con el prinft) « 1 2 »
Programación C/C++
El_newbie2017 16 5,400 Último mensaje 4 Junio 2017, 00:23 am
por El_newbie2017
recursividad ejercicio basico
Programación C/C++
Beginner Web 2 556 Último mensaje 25 Octubre 2018, 16:26 pm
por Serapis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines