controlCondicional

Páginas: 7 (1606 palabras) Publicado: 21 de julio de 2015
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

=

0

falso

(3*a – 0.3) == 0

=

0

falso (OJO con los reales)

3>1>0

=

1

verdadero

i = 3; j = 7;
i * j != 21
float a=0.1;

Asignar a una variable la mayor de otras dos:
a = 17; b = 15;
c = a*(a>=b) + b*(b>=a);

c = 17

a>=b = 1 y b>=a = 0 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 unainstrucció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

Tarea
Escriba un programa que lea tres números reales y decida si forman un
triángulo. Suponga que los números se leen de mayor a menor.

Escriba un programa que lea tres númerosreales representando los
lados de un triángulo y decida si el triángulo es rectángulo o no.
Suponga que los números se leen de mayor a menor.

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

expresión
2

expresión1 &&
expresión2

expresión
1

expresión
2expresión1 || expresión2

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
1

expresión
2

expresión1 ^ expresión2

0

0

0

0

1

1

1

0

1

1

1

0

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 ==2

verdadero 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)

Anidamiento
Una sentencia if puede tener en su parte verdadera o falsa otra sentencia if.
O sea
if(condición1)
if(condición2)
if(condición3)
sentencias;
else
if(condición2)
if(condición3)...

Ejemplo de anidamiento
Se desea un programa para imprimir un letrero dependiendo de la siguiente
tabla:
condición

letrero

cal < 6

“Reprobado”

6 <= cal < 7

“Suficiente”

7 <= cal < 8

“Bien”

8 <= cal < 9

“Muy bien”

9 <= cal < 10 “Excelente”

Comparación de 3 números
Se desea comparar 3 números leídos desde el teclado, imprimiendo el mayo
de ellos.
Se puede resolver comparando elprimero con el segundo, luego si el primero
es mayor, se compara el primero con el tercero.
Si el primero no es mayor que el segundo, entonces se compara el segundo
con el tercero.

a>b
verdadero

“b mayor”

b>c

falso

“c mayor”

verdadero

falso

“c mayor”

a>c

verdadero

“a mayor”

Solución con condiciones
compuestas
Utilizando condiciones compuestas, primero comparamos el primero con los
dosrestantes, si es mayor que los otros dos, imprimimos el primero, sino,
comparamos el segundo con los otros dos, etc.
Note que debe usar >= para que se imprime forzosamente un resultado.
falso

falso

a>=b && a>=c
verdadero

b>=a && b>=c
“b mayor”

c>=a && c>=b

verdadero

“c mayor”

verdadero

“a mayor”

Sentencia switch
La sentencia switch permite elegir entre varias alternativas.
Sintaxis
switch...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS