Sei sulla pagina 1di 3

Toma de Decisiones

Frecuentemente en la resolucin de un problema se presentan situaciones en las que es necesaria la toma de


decisiones. Estas decisiones determinan el curso que debe seguir el programa para la solucin del problema.
Por lo general, los datos de entrada son los condicionantes; esto es, dependiendo de la informacin que el
usuario proporciona sern las acciones que debern ejecutarse.
La instruccin if-else se utiliza para realizar una prueba lgica y a continuacin llevar a cabo una de dos
posibles acciones, dependiendo del resultado de la prueba (cierto o falso).
Sintaxis:
if (condicin)
instruccin //se ejecuta si la condicin es verdadera.
else
instruccin //se ejecuta si la condicin es falsa.

Cuando las acciones constan de ms de una instruccin el conjunto de instrucciones se deben encerrar entre
llaves { }.
if (condicin)
{
Lista de instrucciones //se ejecutan si la condicin es verdadera.
}
else
{
Lista de instrucciones //se ejecutan si la condicin es verdadera.
}

La parte else de la instruccin if-else es opcional, por tanto las instrucciones se pueden escribir, en su forma
general ms simple de la siguiente manera:
if (condicin)
instruccin //se ejecuta si la condicin es verdadera.

Operadores relacionales
Los operadores relaciones comparan si dos valores son iguales, diferentes, uno mayor a otro, etc. Se muestran
en la siguiente tabla:
Operador
Igual
mayor que
menor que
mayor que
menor que
diferente a

smbolo
==
>
<
>=
<=
!=

Significado
compara si dos valores son iguales
compara si el valor de la izquierda es mayor que el de la derecha
compara si el valor de la izquierda es menor que el de la derecha
compara si el valor de la izquierda es mayor o igual que el de la derecha
compara si el valor de la izquierda es menor o igual que el de la derecha
compara si dos valores son diferentes.

Ejemplo No.1:
#include<conio.h>
#include<stdio.h>
void main()
{ int A,B;
clrscr();
printf(Escribe un numero); scanf(%d,&A);
printf(Escribe otro numero); scanf(%d,&B);
if (A > B) //
Regresa un verdadero si A es mayor que B
{ printf(El mayor es %d,A);
}
else
{ printf(El mayor es %d,B);
}
getch();
}

Operadores Lgicos
En ocasiones es necesario evaluar ms de una condicin, se puede hacer a travs de if anidados, pero es ms
fcil si se utilizan los operadores lgicos.
Operador
AND (Y)
OR (O)
NOT (NO)

Simbolo
&&
||
!

Ejemplo
(A>5> && (B<1) Pregunta si A es menor a 5 y B es menor a 1.
(A>10) || (A<5) Pregunta si A es mayor a 10 o A es menor a 5.
(!A)
Pregunta si el valor de A es 0.

Precedencia de los operadores logicos.


La precedencia se refiere al orden en que se evala una lnea que contenga ms de un operador. El operador
||
tiene ms baja precedencia que &&, por ejemplo:
A>10 || B<>0 &&
K==1
Las condiciones se asocian, con los parentesis. Si en el ejemplo anterior se desea que evaluar primero la
relacin ||, se indicar encerrando la expresin entre parntesis, de la siguiente forma: (A>10 || B<>0) &&
(K==1).
Ejemplo No.2
#include<conio.h>
#include<stdio.h>
void main()
{ int A,B,C;
clrscr();
printf(Escribe un numero); scanf(%d,&A);
printf(Escribe otro numero); scanf(%d,&B);
printf(Escribe otro numero); scanf(%d,&C);
gotoxy(20,10);
if (A== B && A==C)
printf(Son iguales);
if (A > B && A>C)
printf(El mayor es %d,A);
if (B >A &&B>C)
printf(El mayor es %d,B);
if (C >A &&C>B)
printf(El mayor es %d,C);
getch();
}