La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.

Presentaciones similares


Presentación del tema: "Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal."— Transcripción de la presentación:

1 Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal

2 Sesión 4: Sentencias Básicas y estructura de secuencia Programación de Computadores Lenguaje Pascal TEMARIO Sentencias de Selección IF THEN IF THEN ELSE CASE OF Sentencias de Repetición WHILE REPEAT

3 Definición : Como se vio en las sesiones de algoritmos, surge la necesidad de bifurcación del control bajo condiciones. Para lograr esto existen en pascal las sentencias de selección IF THEN Esta sentencia permite ejecutar un bloque de instrucciones si la condición es verdadera, caso contrario continúa con las instrucciones siguientes. Sintaxis: IF THEN ; : son una combinación válida de constantes, variables y valores que ralacionados generan un valor final que puede ser TRUE o FALSE. Ej: (a>b*10) AND ( NOT ( c OR d)) : puede ser una instrucción simple como una asigación, lectura,escritura, etc.... Puede ser una instrucción compuesta, en tal caso debe cumplir: BEGIN ;............ END Sesión 4: Estructuras de Control : Selección Programación de Computadores Lenguaje Pascal

4 Ejemplo 1: IF con sentencia simple Realice un programa pascal que solicite un monto entero de dinero y lo desglose en billetes de 5000,1000,500, monedas de 100, 50, 10 y un peso. El programa debe generar como salida la cantidad de billetes y monedas de cada tipo, sólo si es necesario usarlas. PROGRAM desglose; VAR bill10000, bill5000, bill1000, bill500:INTEGER; mon100,mon50,mon10:INTEGER; monto:INTEGER; BEGIN WRITELN(‘Ingrese monto:’); READLN(monto); bill5000 :=monto DIV 5000; monto := monto MOD 5000; bill1000 :=monto DIV 1000; monto := monto MOD 1000; bill500 :=monto DIV 500; monto := monto MOD 500; mon100 :=monto DIV 100; monto := monto MOD 100; mon50 :=monto DIV 50; monto := monto MOD 50; mon10 :=monto DIV 10; monto := monto MOD 10; IF bill5000>0 THEN WRITELN(bill5000,’ billetes de 5000)’; IF bill1000>0 THEN WRITELN(bill1000,’ billetes de 1000’); IF bill500>0 THEN WRITELN(bill500,’ billetes de 500)’; IF mon100>0 THEN WRITELN(mon100,’ monedas de 100)’; IF mon50>0 THEN WRITELN(mon50,’ monedas de 50)’; IF mon10>0 THEN WRITELN(mon10,’ monedas de 10)’; IF monto>0 THEN WRITELN(monto,’ monedas de 1)’; END. Sesión 4: Estructuras de Control : Selección Programación de Computadores Lenguaje Pascal

5 Ejemplo 2: IF con bloque Realice un programa pascal que solicite un dos enteros, correspondientes al largo y ancho de un rectángulo.Si resulta ser un cuadrado, escriba sólo su perímetro, en caso contrario, escriba el perímetro y el área. PROGRAM cuadrado; VAR lado1,lado2:INTEGER; perimetro,area:INTEGER; BEGIN WRITELN(‘Ingrese lado1:’); READLN(lado1); WRITELN(‘Ingrese lado2:’); READLN(lado2); perimetro:= 2*lado1 + 2*lado2; WRITELN(‘perímetro:’,perimetro); IF lado1<> lado2 THEN BEGIN area:= lado1*lado2; WRITELN(‘área,’ area) END; END. Sesión 4: Estructuras de Control : Selección Programación de Computadores Lenguaje Pascal

6 IF THEN ELSE Esta sentencia permite ejecutar un bloque de instrucciones si la condición es verdadera, caso contrario ejecuta el bloque después de ELSE. Sintaxis: IF THEN {si expresión es TRUE} ELSE ; {si expresión es FALSE} Sesión 4: Estructuras de Control : Selección Programación de Computadores Lenguaje Pascal

7 Ejemplo 3: IF THEN ELSE Realice un programa pascal que solicite un número y calcule la raiz cuadrada, en caso de no poder, indicarlo y calcular el número al cubo. PROGRAM raiz; VAR x,y:REAL; BEGIN WRITELN(‘número’); READLN(x); IF x >= 0.0 THEN BEGIN y:= SQRT(x); WRITELN(‘raiz de:’,x,’=‘, y) END ELSE BEGIN y:= x*x*x; WRITELN(‘Número negativo’) WRITELN(‘cubo de:’,x,’=‘, y) END; END. Sesión 4: Estructuras de Control : Selección Programación de Computadores Lenguaje Pascal

8 CASE Esta sentencia permite una bifurcación de más de dos posibilidades, es decir, IF generalizado. Se realiza mediante la comparación de datos sencillos ordinales.(No pueden ser de tipo REAL) Sintaxis: CASE OF : ELSE {opcional} ; {si la variable no satisface caso 1 a n} END; : Especificación de un valor o rango de valores que puede tomar la variable. O valores puntuales separados por coma. Sesión 4: Estructuras de Control : Selección Programación de Computadores Lenguaje Pascal

9 Ejemplo 4: CASE Realice un programa pascal que solicite un carácter y lo clasifique, letras latinas mayúsculas, minúsculas,dígitos,operadores aritméticos y lógicos, en caso contrario, muestre su código. Sesión 4: Estructuras de Control : Selección Programación de Computadores Lenguaje Pascal PROGRAM clasifica; VAR caracter:CHAR; codigo:INTERGER; BEGIN WRITELN(‘ingrese carácter:’); READLN(caracter); CASE carácter OF ‘A’..’Z’: WRITELN(‘letra mayúscula’) ; ‘a’..’z’: WRITELN(‘letra minúscula’) ; ‘0’..’9’: WRITELN(‘dígito’) ; ‘+’,’-’,’*’,’/’: WRITELN(‘operadores aritméticos) ; ‘=’,’ ’: WRITELN(‘operadores lógicos) ; ELSE codigo := ORD(caracter); WRITELN(‘Simbolo ASCII:’, codigo ) END; END.

10 Definición : Son las sentencias o instrucciones que terminan por dar la potencia al lenguaje de programación. Son instrucciones que controlan la realización de las tareas repetitivas. Manejan una condición para salir del ciclo WHILE... DO Esta sentencia permite ejecutar un bloque de instrucciones mientras la expresión sea TRUE Sintaxis: WHILE DO ; Sesión 4: Estructuras de Control : Repetición Programación de Computadores Lenguaje Pascal

11 Ejemplo 4: WHILE... DO Realice un programa pascal que solicite un máximo de N números mayores que 0 y entregue el mayor. Si el usuario decide terminar antes de ingresar los N números debe digitar cualquier número <=0. Sesión 4: Estructuras de Control : Repetición Programación de Computadores Lenguaje Pascal PROGRAM max; const N=100; VAR mayor,numero:REAL; contador:INTERGER; BEGIN contador:=1; numero:=0; mayor:=0; WRITELN(‘Ingrese número’); READLN(numero); WHILE (numero > 0 AND contador < N) DO BEGIN IF (mayor < numero) THEN mayor:=numero; contador:=contador+1; READLN(numero); END; IF mayor > 0 THEN WRITELN(‘número mayor de la lista’,mayor) ELSE WRITELN(‘lista VACÍA’); END.

12 REPEAT... UNTIL Esta sentencia permite ejecutar un conjunto de instrucciones, al menos una vez mientras la expresión sea FALSE Sintaxis: REPEAT ; UNTIL ; Sesión 4: Estructuras de Control : Repetición Programación de Computadores Lenguaje Pascal

13 Ejemplo 5: REPEAT... UNTIL Implemente el ejemplo 4 con estructura REPEAT Sesión 4: Estructuras de Control : Repetición Programación de Computadores Lenguaje Pascal PROGRAM max; const N=100; VAR mayor,numero:REAL; contador:INTERGER; BEGIN contador:=1; numero:=0; mayor:=0; REPEAT WRITELN(‘Ingrese número’); READLN(numero); IF (mayor < numero) THEN mayor:=numero; contador:=contador+1; UNTIL (numero N); IF mayor > 0 THEN WRITELN(‘número mayor de la lista’,mayor) ELSE WRITELN(‘lista VACÍA’); END.

14 Fin Clase 5


Descargar ppt "Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal."

Presentaciones similares


Anuncios Google