Algoritmos

Páginas: 6 (1301 palabras) Publicado: 6 de septiembre de 2012
Estructuras de
Decisión Simples y
Dobles
Andrés Arcia
Departamento de Computación
Escuela de Ingeniería de Sistemas
Facultad de Ingeniería
Universidad de Los Andes

24/04/05

Programación Digital I

1

Estructuras no secuenciales
Los programas que hemos escrito hasta ahora han
consistido en una serie de sentencias que se ejecutan
secuencialmente, una después de la otra(asignación,
lectura y escritura).
Flujo de control: Habilidad de definir el orden en el cual
las sentencias de un programa son ejecutadas.
Estructuras de decisión o selección.
Estructuras de repetición.
24/04/05

Programación Digital I

2

Estructuras de Decisión
Estructura de decisión
Permite seleccionar la próxima sentencia a ejecutarse basándose
en una condición (expresión lógica o unavariable lógica) que es
evaluada y, en función del resultado (cierto o falso) de la
evaluación, se bifurcará a un determinado punto para continuar la
ejecución del programa.

Tipos de estructuras de decisión
- Simple
- Doble
- Anidada

24/04/05

Programación Digital I

3

Estructura de Decisión Simple
Diagrama de flujo.

Pseudocódigo en español.
Si () entonces
S1
….
Snfin_si

Código en C
if ()
{
S1
….
Sn
}
24/04/05

Programación Digital I

4

Estructura de Decisión Simple
Esta estructura evalúa la condición, luego:
Si la condición es cierta entonces ejecuta el
conjunto de sentencias definidas por Si, i =
1 .. n.
Si la condición es falsa entonces no ejecuta
el conjunto de sentencias definidas por Si, i =
1 .. n.
24/04/05

ProgramaciónDigital I

5

Ejemplos I
Pseudocódigo en Español

Código en C

Si (x > 0.0) entonces
Escribir (“x es
positivo”)
Fin_si

If (x>0.0)
printf(“x es positivo
\n”);

Si (a 15)
{ eximidos++;
printf(“Estudiante
eximido\n”); }

NOTA:
Cuando hay dos o más
sentencias asociadas al if
van encerradas entre llaves
{ }.
24/04/05

Programación Digital I

7

Ejemplos IIIPseudocódigo en Español

Código en C

Si (x > 0.0) entonces
y=y+x
cont = cont + 1
Fin_si

if (x >= 0.0)
{
y += x;
cont++;
}

24/04/05

Programación Digital I

8

Ejemplos IV
#include
#define TRUE 1
int main()
{
char miPrimeraLogica, miSegundaLogica;
miPrimeraLogica = TRUE;
miSegundaLogica = !miPrimeraLogica;
if ( miSegundaLogica == TRUE)
printf("miSegundaLogica tiene el valorcierto (true)");
if ( miSegundaLogica != TRUE)
printf("miSegundaLogica tiene el valor falso (false)");
return 0;
}

24/04/05

Programación Digital I

9

Ejemplos V
Dados tres números enteros, determinar si la suma de cualquier
pareja de ellos es igual al tercer número. Si se cumple esta
condición, escribir “Iguales” y, en caso contrario, escribir “Distintos”.
Análisis E-P-SEntradas: A, B, C ∈ Z
Proceso:
- Determinar si A + B = C

⇒ “Iguales”

- Determinar si A + C = B

⇒ “Iguales”

- Determinar si B + C = A

⇒ “Iguales”

- Si no se cumple ninguno de los anteriores ⇒ “Distintos”

Salida: Mensaje indicando si la suma de dos números es
igual “Iguales” o diferente “Distintos” a un tercero.
24/04/05

Programación Digital I

10

Ejemplos VI
Algoritmo0.
1.
2.
3.
4.
5.
6.
7.
24/04/05

Inicio
Escribir (“Introduzca tres números enteros”)
Leer (A, B, C)
Si (A + B = C) entonces
Escribir (“Iguales”)
Fin_si
Si (A + C = B) entonces
Escribir (“Iguales”)
Fin_si
Si (B + C = A) entonces
Escribir (“Iguales”)
Fin_si
Si ((A + B = C) o (A + C = B) o (B + C = A)) entonces
Escribir (“Distintos”)
Fin_si
Fin
Programación Digital I

11 Ejemplos VII
#include
int main ()
{
int A, B, C;
printf(“Introduzca tres números enteros\n”);
scanf(“%i%i%i”,&A,&B,&C);
if (A + B == C)
{ printf(“Iguales”);
exit(0); }
if (A + C == B)
{ printf(“Iguales”);
exit(0); }
if (B + C == A)
{ printf(“Iguales”);
exit(0); }
if ((A + B != C) && (A + C != B) && (B + C != A))
printf(“Distintos”);
return 0;
}
24/04/05

Programación...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Algoritmo
  • Algoritmo
  • Algoritmos
  • Algoritmos
  • Algoritmos
  • Algoritmos
  • Algoritmos
  • Algoritmos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS