estructuras de control - · pdf fileestructuras de control logo permiten controlar el flujo de...
TRANSCRIPT
LOGO
ESTRUCTURAS DE CONTROL
Permiten controlar el flujo de ejecución de un programa o
función, combinando instrucciones o sentencias individuales
en una simple unidad lógica con un punto de entrada y un
punto de salida.
REPETICIÓN
SECUENCIA TIPOS DE
ESTRUCTURAS
SELECCIÓN (DECISIÓN)
LOGO
ESTRUCTURAS DE CONTROL
Sentencia compuesta:
Conjunto de sentencias encerradas entre llaves ({ }) que se
utilizan para especificar el flujo secuencial.
{
Sentencia1;
Sentencia2;
Sentencia3;
.
.
.
SentenciaN;
}
Pero existen
problemas que
requieren etapas con
dos o más opciones o
alternativas a elegir en
función del valor de
una condición o
expresión.
LOGO
SENTENCIA IF
Estructura de control de selección principal.
Tiene dos alternativas o formatos posibles…
1 if (expresión) acción
Acción que se ejecuta si
la expresión lógica es
verdadera.
Expresión lógica que
determina si la acción se
ha de ejecutar.
Expresión
Acción
LOGO
Otro sistema de representar la sentencia If es:
if (condición) sentencia; Donde:
condición Es una expresión entera.
sentencia Es cualquier sentencia ejecutable, que se ejecutará
solo si la condición toma un valor distinto de cero.
Ejemplo: Prueba de divisibilidad
SENTENCIA IF
LOGO
SENTENCIA IF - ELSE
2
Un segundo formato de la sentencia If es la sentencia If-else.
Sintaxis:
if (expresión) acción1 else acción2
Expresión lógica que
determina la acción a
ejecutar.
Acción que se ejecuta si
la expresión lógica es
verdadera.
Acción que se ejecuta si
la expresión lógica es
falsa.
LOGO
SENTENCIA IF - ELSE
Diagrama de flujo que indica el flujo que representa a una
sentencia if-else:
Expresión
Acción1 Acción2
Verdadera Falsa
LOGO SENTENCIAS IF – ELSE ANIDADAS
Se puede utilizar la sentencia IF para implementar decisiones
que impliquen varias alternativas o múltiples alternativas.
Una sentencia If es anidada cuando la sentencia de la rama
verdadera o la rama falsa es a su vez una sentencia If.
if (condición1)
sentencia1
else if (condición2)
sentencia2
.
.
.
else if (condiciónn)
sentencian
else
sentenciae
Sintaxis:
LOGO
SENTENCIA SWITCH
Se utiliza para seleccionar una de múltiples alternativas. Es
especialmente útil cuando la selección se basa en el valor de
una variable simple o de una expresión simple denominada
“expresión de control” o “selector”. El valor de esta expresión
puede ser de tipo int o char, pero no double.
LOGO
Switch(selector)
{
case etiqueta1: sentencias1;
break;
case etiqueta2: sentencias2;
break;
.
.
.
case etiquetaN: sentenciasN;
break;
Default: sentenciasD; //Opcional
}
SINTAXIS
SENTENCIA SWITCH
LOGO
SENTENCIA SWITCH
Ejercicio:
Realizar un programa en C que permita
introducir una calificación de la “A” a la
“E” e imprima en pantalla la
descripción de la misma:
A=Excelente
B=Bueno
C=Regular
D=Deficiente
E=Malo
(Utilice la sentencia Switch).
LOGO
SENTENCIA SWITCH
Solución:
#include<stdio.h>
#include<stdlib.h>
void main()
{
Char nota;
Printf(“Introduzca una nota de la A a
la E: ”);
Scanf(“%c”,¬a);
Switch(nota)
{
Case ‘A’: printf(“Excelente\n”);
Break;
Case ‘B’: printf(“Bueno\n”);
Break;
Case ‘C’: printf(“Regular\n”);
Break;
Case ‘D’: printf(“Deficiente\n”);
Break;
Case ‘E’: printf(“Malo\n”);
Break;
Default: printf(“Usted introdujo un
carácter invalido\n”);
}
Printf(“Fin del programa\n”);
System(“pause”);
}
LOGO
REPETICIÓN
TIPOS DE
ESTRUCTURAS
SELECCIÓN (DECISIÓN)
SECUENCIA
ESTRUCTURAS DE CONTROL
Una característica de las computadoras es su capacidad para
ejecutar una tarea muchas veces (repetidas) con gran
velocidad, precisión y fiabilidad.
Las Estructuras de Control Iterativas o Repetitivas realizan la
repetición o iteración de acciones.
LOGO
BUCLES: Términos básicos
Cualquier construcción de programa
que repite una sentencia o
secuencia de sentencias un número
de veces.
BUCLE
Sentencia (o grupo
de sentencias) que
se repiten en un
bloque
CUERPO DEL BUCLE
Cada repetición del
cuerpo del bucle.
ITERACIÓN
LOGO
BUCLE FOR Método para ejecutar un bloque de sentencias un número fijo
de veces.
for (inicialización; Condición_Iteración; Incremento)
sentencias
Inicializa la
variable de
control del bucle.
Expresión lógica que
determina si las sentencias
se han de ejecutar mientras
sea verdadera.
Incrementa o
decrementa la
variable de control
del bucle.
Sentencia a ejecutar en
cada iteración del bucle.
LOGO
BUCLE FOR
Variable_control = Valor_inicial
Variable_control <= Valor_límite
Sentencia
Expresión_incremento
falso
verdadero
LOGO
BUCLE FOR
Formas de implementar bucles de conteo:
Forma Ascendente Forma Descendente
for (int var_control =
valor_inicial; var_control <=
valor_límite; exp_incremento)
sentencia
for (int var_control =
valor_inicial; var_control <=
valor_límite; exp_decremento)
sentencia
for(int n=1; n<=10; n++)
printf(“n = %d \n”,n*n);
for(int n=10; n<5; n--)
printf(“n = %d \n”,n*n);
Ejemplo: Ejemplo: