Escolar Documentos
Profissional Documentos
Cultura Documentos
Pasos a seguir:
1. Análisis del problema.
2. Diseño del algoritmo para resolverlo.
3. Verificación del algoritmo.
4. Implementación del algoritmo.
2 / 26
Algoritmo
3 / 26
Algoritmo
3 / 26
Ejemplo de Algoritmo
Problema: preparar una taza de té.
4 / 26
Ejemplo de Algoritmo
Problema: preparar una taza de té.
Entrada: tetera, taza, bolsa de té.
Salida: taza de té.
4 / 26
Ejemplo de Algoritmo
Problema: preparar una taza de té.
Entrada: tetera, taza, bolsa de té.
Salida: taza de té.
Inicio
Tomar la tetera
Llenarla de agua
Encender el fuego
Poner la tetera en el fuego
Esperar a que hierva el agua
Tomar la bolsa de té
Introducirla en la tetera
Esperar a que esté hecho el té
Echar el té en la taza
Fin
4 / 26
Representación de Algoritmos
Diagrama de Flujo
Características:
I Representación gráfica de la secuencia de pasos a realizar.
5 / 26
Representación de Algoritmos
Diagrama de Flujo
Características:
I Representación gráfica de la secuencia de pasos a realizar.
Símbolos principales:
Proceso
Decisión
5 / 26
Ejemplo de Diagrama de Flujo
Algoritmo: preparar taza de té
Poner la
Tomar la Llenarla de Encender el
Inicio tetera en el
tetera agua fuego
fuego
Esperar a
que hierva
el agua
Esperar a
Echar el té Introducirla Tomar la
Fin que esté
en la taza en la tetera bolsa de té
hecho el té
6 / 26
Estructuras de Datos
7 / 26
Estructuras de Datos
7 / 26
Programas
Programa = Algoritmo + Estructuras de datos.
8 / 26
Programas
Programa = Algoritmo + Estructuras de datos.
Elementos de un programa:
Constantes: datos cuyo valor no cambia durante la ejecución
del programa.
Variables: datos cuyo valor puede cambiar durante la
ejecución del programa.
Expresiones: Combinación de operadores y operandos.
Operandos: constantes, variables u otras
expresiones.
Operadores: aritméticos, relacionales, lógicos y
de tipo de dato.
Funciones: aceptan unos argumentos y producen un
resultado.
8 / 26
Representación de Programas
Pseudocódigo
Características:
I Lenguaje de especificación de programas.
9 / 26
Representación de Programas
Pseudocódigo
Características:
I Lenguaje de especificación de programas.
9 / 26
Palabras Reservadas
constantes
variables
inicio programa
fin programa
leer <expresión>
escribir <expresión>
10 / 26
Ejemplo de Pseudocódigo
programa preparar taza de té
constantes
tetera, taza de té
variables
bolsa de té
inicio programa
Tomar la tetera
Llenarla de agua
Encender el fuego
Poner la tetera en el fuego
Esperar a que hierva el agua
Tomar la bolsa de té
Introducirla en la tetera
Esperar a que esté hecho el té
Echar el té en la taza
fin programa
11 / 26
Identificadores
Características:
I Debe resultar significativo.
12 / 26
El Operador Asignación
<nombre_de_variable> ← <expresión>
13 / 26
Tipos de Variables
14 / 26
Programas Propios
15 / 26
Estructura Secuencial
Una acción se ejecuta detrás de otra.
El flujo del programa coincide con el orden en el que se sitúan
las instrucciones.
16 / 26
Estructura Secuencial
Una acción se ejecuta detrás de otra.
El flujo del programa coincide con el orden en el que se sitúan
las instrucciones.
..
acción 1 .
acción 1
acción 2 acción 2
acción 3
..
acción 3 .
16 / 26
Estructura Condicional Simple
Se evalúa una condición.
Si la condición se cumple se ejecutan determinadas acciones.
Si la condición no se cumple, no se ejecutan esas acciones.
17 / 26
Estructura Condicional Simple
Se evalúa una condición.
Si la condición se cumple se ejecutan determinadas acciones.
Si la condición no se cumple, no se ejecutan esas acciones.
..
No .
condición si <condición> entonces
Sí <consecuencias>
fin si
consecuencias ..
.
17 / 26
Estructura Condicional Doble
Se evalúa una condición.
Si la condición se cumple se ejecuta una serie de acciones.
Si la condición no se cumple, se ejecuta otra serie de acciones.
18 / 26
Estructura Condicional Doble
Se evalúa una condición.
Si la condición se cumple se ejecuta una serie de acciones.
Si la condición no se cumple, se ejecuta otra serie de acciones.
18 / 26
Estructura Condicional Múltiple
Se evalúan en orden una serie de condiciones.
Se ejecuta la serie de acciones asociada a la primera condición
que se cumpla. Si ninguna de las condiciones se cumple, se
ejecuta una serie de acciones alternativas.
19 / 26
Estructura Condicional Múltiple
Se evalúan en orden una serie de condiciones.
Se ejecuta la serie de acciones asociada a la primera condición
que se cumpla. Si ninguna de las condiciones se cumple, se
ejecuta una serie de acciones alternativas.
..
Sí .
condición1 consecuencias1
si <condición1> entonces
No <consecuencias1>
..
.
si no si <condiciónN> entonces
Sí <consecuenciasN>
condiciónN consecuenciasN si no entonces
<alternativas>
No
fin si
alternativas ..
.
19 / 26
Estructura Repetitiva mientras
Las acciones del cuerpo del bucle se realizan mientras la
condición sea verdadera.
Se pregunta por la condición al principio. Se deduce entonces
que el cuerpo del bucle puede no ejecutarse.
20 / 26
Estructura Repetitiva mientras
Las acciones del cuerpo del bucle se realizan mientras la
condición sea verdadera.
Se pregunta por la condición al principio. Se deduce entonces
que el cuerpo del bucle puede no ejecutarse.
No ..
condición .
mientras <condición> hacer
Sí
<acciones>
acciones fin mientras
..
.
20 / 26
Estructura Repetitiva para
Número de iteraciones fijo
Las acciones del cuerpo del bucle se realizan un número de
veces especificado de antemano.
Diagrama de flujo Pseudocódigo
variable ← N1
No .
¿variable ≤ N2 ? ..
para variable desde N1 hasta N2 hacer
Sí <acciones>
acciones fin para
..
.
variable ← variable + 1
21 / 26
Estructuras para
Recorrido de una secuencia
Las acciones del cuerpo del bucle se realizan en orden para
cada uno de los elementos de la secuencia especificada.
Diagrama de flujo Pseudocódigo
índice ← 0
No ..
¿índice < longitud?
.
para variable en secuencia hacer
Sí
<acciones>
variable ← elto índice-ésimo fin para
índice ← índice + 1 ..
.
acciones
22 / 26
Interrupción de un Bucle
Diagrama de flujo Pseudocódigo
No
condición
..
.
Sí
mientras <condición> hacer
acciones1 <acciones1>
si ¿Interrumpir? entonces
interrumpir
Sí
¿Interrumpir? fin si
<acciones2>
No fin mientras
..
acciones2 .
23 / 26
Continuación de un Bucle
Diagrama de flujo Pseudocódigo
No
condición
..
.
Sí
mientras <condición> hacer
acciones1 <acciones1>
si ¿Continuar? entonces
continuar
Sí
¿Continuar? fin si
<acciones2>
No fin mientras
..
acciones2 .
24 / 26
Ejemplo de Algoritmo en Pseudocódigo I
Problema: calcular y mostrar la suma de los diez primeros
números entre 1 y 1000 que sean divisibles por uno dado.
1: programa suma_divisibles
2: variables
3: natural : divisor, suma, contador, número
4: inicio programa
5: divisor ← leer ‘Introduce el divisor: ’
6: suma ← 0
7: contador ← 0
8: para número desde 1 hasta 1000 hacer
9: si divisor divide a número entonces
10: suma ← suma + número
11: contador ← contador + 1
12: fin si
25 / 26
Ejemplo de Algoritmo en Pseudocódigo II
26 / 26