Está en la página 1de 6

REPBLICA BOLIVARIANA DE VENEZUELA

MINISTERIO DEL PODER POPULAR PARA LA DEFENSA


PROGRAMA
UNIVERSIDAD NACIONAL EXPERIMENTAL POLITCNICA
DE LA FUERZA ARMADA Asignatura: Programacin.
UNEFA
NCLEO LARA Cdigo: SYC-22113
Prelacin: Mat-21113
Objetivo: Utilizar algoritmos eficientemente con ayuda del
computador que permiten resolver problemas de
MATERIAL DIDCTICO
ingeniera.
Horas de clases: Tericas: 2 horas

Unidad V
Laboratorio: 3 horas
Carrera: Ingeniera de Sistema

Estructuras Estticas y Dinmicas de Departamento: Sistema


Almacenamientos de Datos Unidad de Crdito: 3(Tres).
Facilitador: Ing. Wilmary Colmenarez.

Material concebido solo para uso didctico

COORDINACIN DE LA ASIGNATURA PROGRAMACIN


Unidad V. Estructuras Estticas y Dinmicas de Se desea imprimir un mensaje de afirmacin si la temperatura
es de cero grados.
Almacenamiento de Datos

Estructuras de Control If temperatura=0


Then writeln (Temperatura igual a cero grados);
Son aquellas que controlan la ejecucin de instrucciones
Figura 2. Ejemplo de IF
del programa, a travs de una expresiones u rdenes, dentro de
estas estructuras estn: Estructuras de secuencia, seleccin y
Las expresiones pueden ser comparaciones como en la
repeticin.
figura 2, se utilizan los signos . Tambin se
utilizan expresiones booleanas true, false y operaciones lgicas
5.1.- Instrucciones de decisin o de seleccin.
AND y OR
5.1.1 Estructura IF
IF COMPLEJOS
Una de las estructuras de control de seleccin en Turbo
Pascal es el IF , su uso se evidencia en la necesidad de seleccionar
una alternativa a seguir entre varias opciones. Esta estructura If (Expresin)
tiene varias formas de escritura, estn los IF simple, IF complejos Then Accin
e IF anidados Else Accin
Figura 3. Expresin ms compleja del IF
IF SIMPLES
Este tipo de instruccin al igual a la anterior se ejecuta
If (Expresin) evaluando la expresin, si esta es verdadera se ejecuta la accin
Then accin; del Then si la expresin es falsa se ejecuta la accin del Else, la
Figura 1. Expresin ms simple del IF accin del Then es distinta a la accin del Else. Esta forma de la
expresin se utiliza cuando se requiere llevar a cabo diferentes
La instruccin IF funciona de la siguiente manera: Al acciones de acuerdo al valor de la expresin. Ejemplos:
conseguir esta sentencia dentro del programa, primero se evala
la expresin si esta es verdadera es decir se cumple, se ejecuta la
If edad >= 18
accin del Then (entonces), si la expresin es falsa no se ejecuta
Then WriteLn ('! Eres Mayor de edad !')
la accin. Ejemplo: Else WriteLn ('! Eres Menor de edad !');
Figura 4. Ejemplo de IF complejo
Antes de la clusula else no se antepone un punto y coma,
si lo hubiese el compilador producir un mensaje de error, puesto
que no existe ninguna sentencia en Pascal que comience con 2.- Formato de la Sentencia CASE:
else. La parte else es opcional, pero la ejecucin siempre
continuar en otra instruccin. case (selector) of
constante.1 :
begin
En lugar de utilizar instrucciones simples, se pueden usar <instrucciones>;
bloques de instrucciones, como a continuacin se muestra: end;

If edad >= 18 constante.2 :


then begin
Begin <instrucciones> ;
WriteLn ('! Eres Mayor de edad !'); end;
WriteLn ('! Ya puedes Votar!'); .....................
End .....................
Else
constante.N :
Begin
begin
WriteLn ('! Eres Menor de edad !'); <instrucciones> ;
WriteLn ('! An no puedes votar!'); end
End; else
Figura 5. IF con bloque de instrucciones begin
<instrucciones> ;
end;
IF ANIDADOS end; { FIN DE CASE }

IF (Expresin)
Then IF (Expresin) Then Accion Dependiendo del valor que tenga la expresin selector, se ejecutarn
Else IF (Expresin) Then accin las instrucciones etiquetadas por constante.
Else Accin
Aqu tambin los bloques de instrucciones pueden ser reemplazados
Figura 6. Expresin IF anidados por instrucciones simples.
Conviene tener presente que no debe escribirse punto y coma antes de
Una sentencia IF es anidada cuando la sentencia de la rama la palabra else.
verdadera (Then) o la rama falsa (Else), es a su vez es una
sentencia IF. Se puede utilizar para implementar decisiones con Reglas:
varias alternativas o multi-alternativas. Ejemplo: 1. La expresin (selector) se evala y se compara con las
constantes; las constantes son listas de uno o ms posibles
valores de (selector) separados por comas. Ejecutadas la(s) End.
<instrucciones>, el control se pasa a la primera instruccin a
continuacin de end (fin de case). 5.2.- Instrucciones de repeticin.
2. La clusula else es opcional. Un componente esencial de los algoritmos es la repeticin. La
3. Si el valor de (selector) no est comprendido en ninguna lista computadora, a diferencia de los humanos, posee una alta velocidad de
de constantes y no existe la clusula else, no sucede nada y procesamiento. A travs de ella, es posible ejecutar, de manera
sigue el flujo del programa; si existe la clusula else se ejecutan repetitiva, algunos pasos elementales de un algoritmo. Esto puede
la(s) <instrucciones> a continuacin de la clusula else. considerarse una extensin natural de la secuencia.
4. El selector debe ser un tipo ordinal (integer, byte, char, boolean La repeticin es la estructura de control que permite al algoritmo
o enumerado). Los nmeros reales no pueden ser utilizados ya ejecutar un conjunto de instrucciones un nmero de veces fijo y/o
que no son ordinales. Los valores ordinales de los lmites conocido de antemano.
inferiores y superiores deben de estar dentro del rango -32768
a 32767. Por consiguiente, los tipos string, longint y word no
Entre las estructuras repetitivas podemos destacar las siguientes:
son vlidos.
5. Todas las constantes case deben ser nicas y de un tipo ordinal 1.- While (Mientras)
compatible con el tipo del selector.
La estructura repetitiva while (mientras) es aquella en la que el
6. Cada sentencia, excepto la ltima, deben ir seguidas del punto
nmero de iteraciones no se conoce por anticipado y el cuerpo del
y coma.
bucle se ejecuta repetidamente mientras que una condicin sea
verdadera.
Ejemplo:

{El siguiente programa lee un carcter del teclado y


Su formato es:
despliega un mensaje en pantalla si es letra o nmero while <condicin> do
o carcter especial} begin
Program Tecla; <instrucciones>;
Uses Crt; end;
Var
caracter : char;
Begin Reglas de funcionamiento:
Write ('Escribe un caracter: '); 1. La condicin se evala antes y despus de cada ejecucin del
caracter:=ReadKey; WriteLn; bucle. Si la condicin es verdadera, se ejecuta el bucle, y si es
Case caracter of falsa, el control pasa a la sentencia siguiente al bucle.
'0'..'9' : WriteLn ('Es un nmero');
2. Si la condicin se evala a falso cuando se ejecuta el bucle por
'a'..'z','A'..'Z' : WriteLn ('Es una letra')
Else primera vez, el cuerpo del bucle no se ejecutar nunca.
WriteLn ('Es un caracter especial') 3. Mientras la condicin sea verdadera el bucle se ejecutar. Esto
End; significa que el bucle se ejecutar indefinidamente a menos
ReadKey que "algo" en el interior del bucle modifique la condicin
haciendo que su valor pase a falso. Si la expresin nunca
cambia de valor, entonces el bucle no termina nunca y se
denomina bucle infinito lo cual no es deseable.
repeat
<instruccin.1> ;
Ejemplos: <instruccin.2> ; Aqu las palabras repeat y until sirven tambin como
.................. delimitadores de bloque.
Program Ej_While; ..................
Uses Crt; <instruccin.N> ; Reglas de funcionamiento:
{El siguiente programa captura una cadena, until (condicin);
1. La condicin se evala al final del bucle, despus de
hasta que se presione la tecla Esc (escape),
cuyo ordinal es el #27.} ejecutarse todas las sentencias.
Const 2. Si la condicin es falsa, se vuelve a repetir el bucle y se ejecutan
Esc = #27; todas sus instrucciones.
Var 3. Si la condicin es falsa, se sale del bucle y se ejecuta la
nombre : string [30]; siguiente instruccin a until.
tecla : char;
4. La sintaxis no requiere begin y end.
cont : word;
Begin
ClrScr; Ejemplo:
cont:=1; {El siguiente programa captura una cadena, hasta que
While (tecla<>Esc) do se presione la tecla Esc (escape), cuyo ordinal es el
Begin #27.}
Write (cont,' Nombre: ');
ReadLn (nombre); Program Ej_Repeat;
Inc (cont); Uses Crt;
tecla:=ReadKey Const
End Esc = #27;
End. Var
nombre: string [30];
tecla : char;
2.- Repeat (Repetir) cont : word;
Begin
La accin de Repeat - Until es repetir una serie de instrucciones hasta ClrScr;
que se cumpla una determinada condicin. cont:=1;
Repeat
Write (cont,' Nombre: ');
ReadLn (nombre);
Su formato es: Inc (cont);
tecla:=ReadKey
Until (tecla=Esc)
End.
ReadLn (valor_final);
For contador:=1 to valor_final do
WriteLn ('Iteracin: ', contador);
3.- FOR (Para). ReadKey
End.
Cuando se sabe de antemano el nmero de veces que deber
ejecutarse un ciclo determinado, sta es la forma ms conveniente. El contador se puede decrementar sustituyendo la palabra to por la
palabra downto.
El formato para for - to - do es:
El formato para for - downto - to es:
for <contador>:=<expresin.1> to
<expresin.2> do for <contador>:=<expresin.1>
begin downto <expresin.2> do
<instrucciones> ; begin
end; <instrucciones> ;
end;
Al ejecutarse la sentencia for la primera vez, a contador se le asigna un Ejemplo:
valor inicial (expresion.1), y a continuacin se ejecutan las instrucciones {El siguiente programa despliega en pantalla el
del interior del bucle, enseguida se verifica si el valor final (expresin.2) nmero de veces que se ejecuta las instrucciones
es mayor que el valor inicial (expresin.1); en caso de no ser as se contenidas en el bucle for}
incrementa contador en uno y se vuelven a ejecutar las instrucciones, Program Ej_Downto;
hasta que el contador sea mayor que el valor final, en cuyo momento Uses Crt;
se termina el bucle. Var
Aqu, contador no puede ser de tipo real. Valor_final, contador : integer;
Begin
ClrScr;
Ejemplo: Write ('Escribe el nmero de iteraciones: ');
ReadLn (valor_final);
{El siguiente programa despliega en pantalla el For contador:=valor_final downto 1 do
nmero de veces que se ejecuta las instrucciones WriteLn ('Iteracin: ', contador);
contenidas en el bucle for} ReadKey
End.
Program Ej_For;
Uses Crt;
Var
Valor_final, contador : integer;
Begin
ClrScr;
Write ('Escribe el nmero de iteraciones: ');

También podría gustarte