Está en la página 1de 8

Estructuras de control

condicional
Operadores relacionales
Los operadores relacionales permiten construir expresiones booleanas es
decir, expresiones cuyo valor es 1 o 0.
Los operadores relacionales permiten comparar valores o expresiones
aritméticas.
En C el valor 1 se interpreta como verdadero y el 0 como falso.

Operador Significado

== igualdad
!= Diferente
> Mayor que
< Menor que
>= Mayor o igual
<= Menor o igual
Ejemplos
1>2 = 0 falso
3<5 = 1 verdadero
(7 – 4) == 3 = 1 verdadero
17 >= (5 + 12) = 1 verdadero
i = 3; j = 7;
i * j != 21 = 0 falso
float a=0.1;
(3*a – 0.3) == 0 = 0 falso (OJO con los reales)
3>1>0 = 1 verdadero
Tarea
Encuentre el valor de las siguientes expresiones relacionales

2 != 7
3>2
-1 <= -2
(5 – 7) > (3 – 4)
(3*2 + 5*4) == (8*5/2 + 4*4 – 10)
Sentencia if
La sentencia if permite decidir ejecutar o no una instrucción o un bloque de
instrucciones.
Sintaxis
if (condición)
Instrucción o bloque;
Un bloque es una secuencia de instrucciones englobadas entre llaves (“{}”).
La condición esta formada por una expresión booleana.

verdadero
condición

falso sentencias
Sentencia if - else
La sentencia if – else permite decidir entre ejecutar una instrucción (o un
bloque de instrucciones) y otra instrucción (o un bloque de instrucciones)
Sintaxis
if (condición)
Instrucción o bloque;
else
Instrucción o bloque;

falso verdadero
condición

sentencias sentencias
Operadores lógicos
Existen 4 operadores lógicos en C: and = &&, or = ||, not = ! Los
operadores lógicos tienen una prioridad más baja que los operadores
relacionales.

expresión expresión expresión1 && expresión expresión expresión1 || expresión2


1 2 expresión2 1 2
0 0 0 0 0 0
0 1 0 0 1 1
1 0 0 1 0 1
1 1 1 1 1 1

expresión ! expresión
0 1
1 0

Prioridad de evaluación
!
&&
||
ejemplos de operadores lógicos
x > 5 || x == 3 verdadero para x = 3, 6, 7, ...
! (x == 7) && x % 2 != 0 verdadero para x = 1, 3, 5, 9, 11, ...
x <= -1 || x > 5 || x ==2verdadero para x = …, -2, -1, 2, 6, 7, 8, ...

En el siguiente fragmento se despliegan solo los múltiplos de 7 o


cuadrados perfectos
if(num % 7 == 0 || sqrt(num)-floor(sqrt(num))==0)

También podría gustarte