programación estructurada - programacion.ucoz.com · paradigma estilo, enfoque, paradigma, modelo,...
TRANSCRIPT
![Page 1: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/1.jpg)
PROGRAMACIÓN ESTRUCTURADA Programación estructurada
![Page 2: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/2.jpg)
PARADIGMAS DE PROGRAMACIÓN
![Page 3: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/3.jpg)
PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo
comprendemos, lo interpretamos e intervenimos sobre él.
Forma aceptada de resolver un problema en la ciencia.
Diversas formas que, a lo largo de la evolución de los lenguajes, han sido utilizadas como estilos para programar.
![Page 4: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/4.jpg)
PARADIGMAS DE PROGRAMACIÓN Existen diversos paradigmas: Se diferencian en:
Conceptos que manejan Abstracciones usadas para representar los elementos
de un programa (objetos, funciones, variables, etc.)
Programación imperativa
Programación declarativa
Tarea
¿Cómo?
Descripción de acciones a realizar
¿Qué? Descripción del problema
Solución
![Page 5: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/5.jpg)
PARADIGMAS (II) Diversos paradigmas:
Paradigma Descripción Leng. En foques
Imperativo Enunciados que cambian el estado de un programa. Expresan cómo el programa debe realizar alguna tarea.
C, Basic
Modular, estructurado, orientado a objetos
Declarativo Indican qué es lo que el programa debe realizar. Determina las propiedades de la solución, sin atender el algoritmo que busca dicha solución.
SQL Lógico, funcional
![Page 6: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/6.jpg)
PARADIGMAS (III) Información de alumnos: nombre, edad, sexo,
grupo, etc. Formato: texto plano y BD.
Identificar alumnos con edad > 20 años. BD: Lenguaje SQL (declarativo)
SELECT * FROM Alumnos WHERE edad > 20
Texto plano: C (imperativo) Abrir archivo
Repetir Leer secuencialmente las líneas Buscar campo correspondiente a edad
Si el campo edad > 20, almacenar la línea
Cerrar archivo
![Page 7: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/7.jpg)
SENTENCIAS Y ESTRUCTURAS DE CONTROL
![Page 8: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/8.jpg)
PROGRAMACIÓN ESTRUCTURADA Forma o estilo de programación enfocada al
control de la ejecución de un programa. Fortran: instrucción de salto goto modificaba la
secuencia de ejecución (programas poco legibles y difíciles de comprender).
Elimina las dificultades provocadas por la instrucción de salto.
Todo programa estructurado es: Fácil de leer y comprender. Fácil de mantener. Eficiente. Fácil de codificar en diversos lenguajes.
![Page 9: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/9.jpg)
PROGRAMACIÓN ESTRUCTURADA (II) Teorema de la estructura (Bohm y Jacopini,
1966): Todo programa propio, realice el trabajo que realice, tiene siempre al menos un programa propio equivalente que solo utiliza las estructuras básicas de la programación, que son: La secuencia La selección (condición) La repetición
Estructuras de control: permiten controlar el flujo de ejecución de un programa.
![Page 10: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/10.jpg)
LECTURA/ESCRITURA Lectura Leer <variable>;
Por ejemplo: Leer calif;
Escritura Escribir <expresión>;
Por ejemplo: Escribir “Ingrese calif”;
![Page 11: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/11.jpg)
EJERCICIO Hacer un programa que lea un número desde el
teclado, y lo escriba en pantalla
![Page 12: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/12.jpg)
SECUENCIAL Instrucciones que se ejecutan de
manera consecutiva. … Escribir “ingrese número”; Leer num; doble num * 2; Escribir doble; …
![Page 13: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/13.jpg)
CONDICIONAL SIMPLE Evalúa una expresión y ejecuta una acción si
resulta verdadera, sino, no hace nada. Si <expresión> Entonces <instrucciones> FinSi
Por ejemplo: Si calif >= 8.5 Entonces
Escribir “Exento”;
FinSi
![Page 14: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/14.jpg)
CONDICIONAL DOBLE Evalúa una expresión. De ser verdadera, ejecuta
ciertas acciones, caso contrario, ejecuta otras. Si <expresión> Entonces <instrucciones> Sino <instrucciones> FinSi
Si calif >= 8.5 Entonces
Escribir “Exento”;
Sino
Escribir “¡A final!”;
FinSi
![Page 15: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/15.jpg)
EJERCICIO Actualizar el programa anterior, para que
además escriba si el valor ingresado es positivo o negativo
![Page 16: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/16.jpg)
CONDICIONAL MÚLTIPLE Evalúa una expresión, la cual puede ser tratada
según diversos valores. Segun <variable> Hacer
<número1>: <instr>
<número2>,<número3>: <instr>
<...>
De Otro Modo: <instr>
FinSegun
![Page 17: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/17.jpg)
CONDICIONAL MÚLTIPLE (II) Segun num Hacer 1, 3, 5, 7, 8, 10, 12: dias 31; 4, 6, 9, 11: dias 30; 2: dias 28; De Otro Modo: dias 0;
FinSegun
![Page 18: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/18.jpg)
EJERCICIO Utilice el ejemplo para que su programa escriba
en pantalla los días que le corresponderían al número que se lee desde teclado
![Page 19: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/19.jpg)
CICLOS O BUCLES
Estructura de control que permite la ejecución repetida de una o varias instrucciones
![Page 20: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/20.jpg)
EJEMPLO “En tanto no cumplas los 18 años, barrerás la
cochera”
![Page 21: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/21.jpg)
EJEMPLO “En tanto no cumplas los 18 años, barrerás la
cochera”
• Límite: 18 años • Acción a repetir: barrer
![Page 22: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/22.jpg)
EJEMPLO “En tanto no cumplas los 18 años, barrerás la
cochera”
• Límite: 18 años • Acción a repetir: barrer • Edad de inicio • Incremento de años (natural
para el ser humano)
![Page 23: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/23.jpg)
REPETICIÓN: MIENTRAS (WHILE) Mientras una expresión sea cierta, ejecuta una o
varias acciones. Mientras <condición> Hacer <instrucciones> FinMientras i <- 0;
Mientras i < 10 Hacer Escribir “itera”; i <- i + 1; FinMientras
![Page 24: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/24.jpg)
CONSIDERACIONES
Instrucciones
¿Con qué valor inicia?
¿Con qué valor finaliza?
¿El contador se incrementa o decrementa?
¿con qué valor?
![Page 25: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/25.jpg)
EJERCICIO Imprimir los números del 1 al 25 Pida un número desde teclado mayor a cero e
imprima desde el valor ingresado hasta cero
![Page 26: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/26.jpg)
PARA (FOR) Ejecuta una o varias acciones un número determinado
de veces. Para <var> <ini> Hasta <fin> Con Paso <val> Hacer
<instrucciones>
FinPara Para i 0 Hasta 10 Con Paso 1 Hacer
<instrucciones>
FinPara
![Page 27: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/27.jpg)
REPETIR-HASTA QUE (REPEAT-UNTIL) Ejecuta una o varias acciones mientras una
expresión sea evaluada como cierta. Repetir <instrucciones> Hasta Que <condición> i <- 0; Repetir Escribir “itera”; i <- i + 1; Hasta Que i > 10
![Page 28: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/28.jpg)
EJERCICIO Usar el ciclo Repeat-Until para imprimir los
números del 1 al 25
![Page 29: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/29.jpg)
EJEMPLO/EJERCICIO Impresión de 5 a 10, con incremento de 1 Para cont <- 5 Hasta 10 Con Paso 1 Hacer Escribir cont; FinPara
Imprimir los números del 1 al 25 usando el ciclo For, con incrementos de 2
![Page 30: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/30.jpg)
CONSIDERACIONES Las estructuras de control tienen un único punto
de entrada y un único punto de salida. Se componen de sentencias o de otras estructuras
de control (e. g. anidamiento de condicionales, bucles). Si <expresión> <acción> Sino Si <expresión> <acción> FinSi FinSi
![Page 31: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/31.jpg)
CONSIDERACIONES Mientras <condición> Mientras <condición> <acciones> FinMientras FinMientras Para <var> <ini> Hasta <fin> Con Paso <val> Hacer
Para <var2> <ini> Hasta <fin> Con Paso <val> Hacer <instrucciones>
FinPara
FinPara
![Page 32: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/32.jpg)
EJERCICIO Solicite un número desde teclado. Si el número es
negativo, imprima los siguientes 10 números mayores a él, de lo contrario, imprima los siguientes 10 números menores a él. Para el primer caso, utilice un ciclo Mientras, para el segundo un ciclo Para
![Page 33: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/33.jpg)
CONTADOR Y ACUMULADOR Contador
Espacio de memoria cuyo contenido puede variar incrementándose o decrementándose de manera constante
contador <- contador + 1;
Al valor de contador se le suma 1, y el resultado se vuelve a almacenar en la misma variable
otro <- otro - 5;
El valor de otro se le resta 5, y el resultado se
almacena nuevamente en la misma variable
![Page 34: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/34.jpg)
CONTADOR Y ACUMULADOR (II) Los contadores siempre se deben inicializar
contador <- 0; otro <- 25;
Los valores en los que se inicialicen dependerán de los requerimientos del problema
contador <- contador + 1
1 0 + 1
2 1 + 1
3 2 + 1
otro <- otro - 5
20 25 - 5
15 20 - 5
10 15 - 5
![Page 35: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/35.jpg)
CONTADOR Y ACUMULADOR (III) Acumulador
Espacio de memoria cuyo contenido puede variar incrementándose o decrementándose de manera variable
promedio <- promedio + calif;
Al valor de promedio se le suma el valor de calif, y el resultado se vuelve a almacenar en la misma variable
total <- total - descuento;
El valor de total se le resta el valor de descuento, y el
resultado se almacena nuevamente en la misma variable
![Page 36: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/36.jpg)
CONTADOR Y ACUMULADOR (IV) Los acumuladores siempre se deben inicializar
promedio <- 0; total <- 5500;
Los valores en los que se inicialicen dependerán de los requerimientos del problema
promedio <- promedio +
calif
10 0 + 10
19 10 + 9
27 19 + 8
otro <- total - descuento
5000 5500 - 500
3700 5000 - 1300
3600 3700 - 100
![Page 37: Programación estructurada - programacion.ucoz.com · PARADIGMA Estilo, enfoque, paradigma, modelo, filosofía. Marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos](https://reader030.vdocuments.site/reader030/viewer/2022040912/5e8787fd9563c6130b5c5bbe/html5/thumbnails/37.jpg)
EJERCICIOS 1. Hacer un programa que lea dos números, e
imprima los números comprendidos entre ellos en orden decreciente
2. Sumar los números pares desde el 2 hasta el valor que indique el usuario
3. Imprimir (escribir en pantalla) la tabla de multiplicar del 1 al 10 de un número ingresado desde el teclado.
4. Hacer un programa que lea cinco números desde teclado e imprima cuál es el menor y cuál es el mayor