Contenidos
Ejercicios de prioridad de operadores
Orden de precedencia de las operaciones
Un programa informático es como un viaje para sus datos. Durante este viaje, los datos se encuentran con situaciones que los impactan, cambiándolos para siempre. Como cualquier viaje, hay que recorrer un camino determinado. En ese camino, hay diferentes caminos que los datos pueden tomar. A veces, los datos toman un camino; otras, otro. El camino que tomen los datos depende del objetivo final del programa.
Una condicional es una bifurcación (o varias bifurcaciones) en el camino. Tus datos llegan a una condicional, que luego les dice a los datos a dónde ir. Los condicionales más simples utilizan una combinación de sentencias if con operadores de comparación y lógicos (<, >, <=, >=, ==, ===, !=, !==, &&, ||) para dirigir el tráfico. Utilizan las palabras clave if y else.
Este código utiliza el operador === para determinar si el valor de entrada es igual a ‘3’ y, en caso contrario, si es igual a ‘4’. Si el valor es ‘3’, el programa ejecuta la línea 6. Si el valor es “4”, se ejecuta la línea 8. Si el valor es otro, ejecuta la línea 10. Como puedes ver, podemos controlar el flujo del programa estableciendo condicionales en una sentencia if. ¡Buen trabajo!
Precedencia de los operadores de python
Ahora hemos añadido una serie de operadores adicionales a los que aprendimos en los capítulos anteriores. Es importante entender cómo se relacionan estos operadores con los demás en cuanto a la precedencia de los operadores. Python siempre evaluará primero los operadores aritméticos (** es el más alto, luego la multiplicación/división, luego la suma/resta). Después vienen los operadores relacionales. Finalmente, los operadores lógicos se evalúan en último lugar. Esto significa que la expresión x*5 >= 10 e y-6 <= 20 se evaluará para realizar primero la aritmética y luego comprobar las relaciones. La y se hará en último lugar. Aunque muchos programadores podrían colocar paréntesis alrededor de las dos expresiones relacionales, no es necesario.
Definir la precedencia de operadores y la asociatividad de operadores
La precedencia de operadores significa que algunos operadores se agrupan más estrechamente que otros. Por ejemplo, en 2 + 4 * 5, la multiplicación tiene mayor precedencia, por lo que 4 * 5 se agrupa como el operando de la derecha de la suma, en lugar de que 2 + 4 se agrupe como el operando de la izquierda de la multiplicación. Es como si la expresión se escribiera 2 + (4 * 5), no (2 + 4) * 5. Así, la expresión da 2 + 20 == 22, en lugar de 6 * 5 == 30.
La asociatividad de operadores define lo que ocurre si se utiliza una secuencia de los mismos operadores uno tras otro: normalmente se agruparán a la izquierda o a la derecha. Por ejemplo, en 9 – 3 – 2, la resta es asociativa a la izquierda, por lo que 9 – 3 se agrupa como el operando de la izquierda de la segunda resta, en lugar de que 3 – 2 se agrupe como el operando de la derecha de la primera resta. Es como si la expresión se escribiera (9 – 3) – 2, y no 9 – (3 – 2). Así, la expresión da 6 – 2 == 4, en lugar de 9 – 1 == 8.
En una comparación encadenada, cada expresión del argumento se evalúa como máximo una vez, aunque participe en dos comparaciones, pero el resultado de la evaluación se obtiene para cada comparación. (No se evalúa en absoluto si el cortocircuito significa que no es necesario para ninguna comparación). Esto es importante si el cálculo de un argumento interior es costoso o no determinista. Por ejemplo,
Precedencia de los operadores booleanos
La precedencia del operador determina qué operador debe ser evaluado primero y cuál después en la expresión cuando uno o más operadores están presentes en una expresión. el otro término que está relacionado con la expresión es la asociatividad del operador. La asociatividad del operador que determina la dirección de la evaluación del operador de la misma precedencia del operador, la asociatividad puede ser de izquierda a derecha o de derecha a izquierda.
En el ejemplo anterior, el resultado es 1, no 19 porque el operador ‘/’ tiene mayor precedencia que el operador ‘+’ y los operadores ‘+’ y ‘-‘ tienen la misma precedencia y su asociatividad es de izquierda a derecha por lo que la expresión se evalúa como –
Formación en C++ (4 Cursos, 5 Proyectos, 4 Cuestionarios)4 Cursos Online | 5 Proyectos Prácticos | 37+ Horas | Certificado verificable de finalización | Acceso de por vida | 4 Cuestionarios con Soluciones 4.5 (6,888 valoraciones)Precio del Curso Ver CursoCursos Relacionados
Explicación: Como en el código, la expresión se evalúa y la salida es 21, no 16 porque primero se realiza el operador ‘/’ y luego el operador ‘+’, por lo que la expresión se resuelve como x = a + ( b / c ).