Вы находитесь на странице: 1из 48

ALGORITMOS

Ing. Verónica Falconí


veronica.falconi@udla.edu.ec

Septiembre 2019– Febrero 2020


Agenda
• Representación de Algoritmo
• Pseudocódigo
• Diagrama de Flujo de Datos

• Ejercicios
• Formas de representar algoritmo
• Estructuras Básicas
• Secuenciales
• Selección o Decisión
• Repetición e Iteración
Representación de
Algoritmos

3
Formas de representar algoritmos
Un algoritmo se puede representar por medio de dos
formas:

• Pseudocódigo.
• Diagramas de Flujo

4
Formas de representar algoritmos
Pseudocódigo

• Es un lenguaje de especificación de algoritmos, describe


un algoritmo utilizando un lenguaje natural,
instrucciones de programación y palabras clave que
definen las estructuras básicas. Su objetivo es permitir
que el programador se centre en los aspectos lógicos de
la solución a un problema.

5
Ejercicio en Clase
• Diseñar un algoritmo que lea cuatro variables y calcule e
imprima su producto, suma y media aritmética.

6
Ejercicio en Clase
• Diseñar un algoritmo que lea cuatro variables y
calcule e imprima su producto, suma y media
aritmética.
• Pasos
• Nombre algoritmo
• Variables: Cuántas? Cuáles? Tipo?
• Declarar variables
• Instrucciones del Algoritmo
• Inicio
• Leer
• Calcular
• Mostrar
• Fin

7
Ejercicio en Clase
Algoritmo Prueba
Entero: a, b, c, d, producto, suma
Real: media
inicio
leer (a, b, c, d)
producto <-- (a * b * c * d)
suma <-- (a + b + c + d)
media <-- suma / 4
escribir (producto, suma, media)
fin
Fin-Algoritmo 8
Ejercicio
• Mejorar el formato de salida del anterior algoritmo.

9
Ejercicio en Clase
Algoritmo Prueba
Entero: a, b, c, d, producto, suma
Real: media
inicio
escribir (“Por favor ingrese los cuatro datos”)
leer (a, b, c, d)
producto <-- (a * b * c * d)
suma <-- (a + b + c + d)
media <-- suma / 4
escribir (“El producto es: ”, producto)
escribir (“la suma es: ”, suma)
escribir (“la media es: ”, media)
fin
10
Fin-Algoritmo
Ejercicio en Clase
Algoritmo Prueba

Entero: a, b, c, d, producto, suma

Real: media

inicio
escribir (“Por favor ingrese los cuatro datos”)

leer (a, b, c, d)
producto <-- (a * b * c * d)
suma <-- (a + b + c + d)
media <-- suma / 4
escribir (“El producto es: ”, producto, “la suma es: ”,

suma, “la media es: ”, media)

fin

Fin-Algoritmo
11
Formas de representar algoritmos
Diagrama de Flujo

• Son representaciones gráficas de los pasos necesarios


que conllevan a la solución algorítmica de un problema.
Para diseñarlos se utilizan determinados símbolos o
figuras que representan una acción dentro del
procedimiento.

12
Formas de representar algoritmos
Símbolos para diseñar flujogramas

Inicio/Fin Proceso Salida a


Pantalla

Con
Deci
ector
sión

Línea de Flujo
Entrada Impresora
/Salida

13
ESTRUCTURAS BÁSICAS

14
Estructuras Básicas
Una estructura es una unidad básica de lógica de
programación que traducen acciones que se realizan de
acuerdo al requerimiento o al proceso necesario al cual
debe someterse la información, se dividen en:

• Secuenciales
• Selección o Decisión
• Repetición e Iteración

15
Estructuras Básicas
Estructuras Secuenciales

En esta estructura una acción o instrucción se ejecuta una detrás


de otra en orden y secuencia. Las tareas se realizan de tal manera
que deben cumplirse en estricto orden secuencial, la salida de
una es la entrada de la siguiente, así sucesivamente hasta el fin
del proceso .

Estas estructuras contienen operaciones de Asignación, calculo y


suma.

16
Estructuras Básicas
Ejercicios
• Realice un algoritmo que le permita determinar el área
de un rectángulo.
Inicio

Leer base,
altura

area<-base*altura

El area del rectangulo


es, area

Fin
17
Estructuras Básicas
Ejercicios
• Realice un algoritmo para sumar dos números leídos por
teclado .
Inicio

Leer num1,
num2

Suma<-num1+num2

La suma de dos
números es: suma

Fin
18
Estructuras Básicas
Ejercicios en Clase
Realice la representación de los siguientes algoritmos usando
pseudocódigo y diagrama de flujo de datos:
1. Determine la hipotenusa de un triángulo rectángulo conocidas las
longitudes de sus dos catetos.
2. Desarrollar un algoritmo que calcule el área de un cuadrado
3. Desarrolle un algoritmo que permita determinar el área y volumen
de un cilindro dado su radio y altura.
4. Realice un algoritmo que ingrese la velocidad de un automóvil,
expresada en kilómetros por hora, determine la velocidad en
metros por segundo.

19
Estructuras Básicas
Ejercicios en Clase
Realice la representación de los siguientes algoritmos usando
pseudocodigo y diagrama de flujo de datos:
5. Investigue las tasas actuales de cambio monetario. Represente
la lógica de un programa que permita al usuario ingresar un
número en dólares, convertirlo en euros y en yenes japoneses.
6. Represente la lógica de un programa que permita al usuario
ingresar el salario base, las ventas totales y la tasa de comisión
de un vendedor. El programa de calcular el sueldo del
vendedor en función de su salario, ventas totales y tasa de
comisión.

20
Estructuras Básicas
Estructuras Selección o Decisión

• Para obtener la solución de un problema se tienen


ciertas condiciones. Una estructura selectiva esta
compuesta por una expresión lógica.
• Simples

21
Estructuras Básicas
Estructuras Selección o Decisión
Dobles

• Las acciones se representan como instrucción V (cuando es verdadera), instrucción


F (cuando es falsa), después que las acciones se realizan, el algoritmo continua su
secuencia, pues la condición ha terminado (FIN_SI) ejemplo:

22
Estructuras Básicas
Estructuras Selección o Decisión

Múltiples
Las estructuras de comparación múltiples, son tomas de decisión especializadas
que permiten comparar una variable contra distintos posibles resultados,
ejecutando para cada caso una serie de instrucciones especificas.

23
Estructuras Básicas
Estructuras Selección o Decisión

Múltiples (En caso de):


Las estructuras de comparación múltiples, es una toma de decisión
especializada que permiten evaluar una variable con distintos posibles
resultados, ejecutando para cada caso una serie de instrucciones especificas.

24
Estructuras Básicas
Estructuras Selección o Decisión

Se considera que A y B son número diferentes

25
Estructuras Básicas
Ejemplos de Estructuras Selección o Decisión

• Ejemplo 1

Desarrolle un algoritmo que permita leer un valor


cualquiera N y escriba si dicho número es par o impar.

26
Estructuras Básicas
Ejemplos de Estructuras Selección

• Ejemplo 1

Diagrama de Flujo de Datos

n
%2
==0

27
Estructuras Básicas
Ejemplos de Estructuras Selección o Decisión

• Ejemplo 1

Seudocódigo

Inicio
n:Entero
Leer n
Si n mod 2==0 Entonces
Escribir “ Es par”
Sino
Escribir “Es impar”
Fin_Si
Fin

28
Estructuras Básicas
Ejemplos de Estructuras Selección o Decisión

• Ejemplo 2

Desarrolle un algoritmo que permita leer dos valores


distintos, determinar cual de los dos valores es el mayor y
escribirlo.

29
Estructuras Básicas
Ejemplos de Estructuras Selección o Decisión

• Ejemplo 2

Inicio
A = 0, B = 0
Leer los dos valores
Si A = B Entonces vuelve a 3 porque los valores deben ser distintos
Si A>B Entonces
Escribir A, “Es el mayor”
Sino
Escribir B, “Es el mayor”
Fin_Si
Fin

30
Estructuras Básicas
Ejemplos de Estructuras Selección o Decisión
• Ejemplo 2

31
Estructuras Básicas
Ejemplos de Estructuras Selección o Decisión

Ejemplo 3
• Elabora un algoritmo para leer 3 números enteros
diferentes entre sí, y determinar el número mayor de los
tres.

32
Estructuras Básicas
Ejemplo 5

• Se pide leer tres notas del alumno, calcular su definitiva en un rango de 0-5 y enviar un mensaje donde
diga si el alumno aprobó o reprobó el curso.

INICIO
Not1, Not2, Not 3 :REAL
Def: REAL
LEA Nota1, Nota2, Nota3
Def <- (Not1 + Not2 + Not3) /3
Si Def < 3 entonces
Escriba “Reprobó el curso”
Sino
Escriba “Aprobó el curso”
Fin-Si
FIN

33
Estructuras Básicas
Ejemplo 6

• Se desea escribir un algoritmo que pida la altura de una persona, si la altura es menor o igual a 150 cm envíe el mensaje: “Persona de
altura baja”; si la altura está entre 151 y 170 escriba el mensaje: “Persona de altura media” y si la altura es mayor al 171 escriba el
mensaje: “Persona alta”. Exprese el algoritmo usando Pseudocódigo y diagrama de flujos.

INICIO
Altura: ENTERO
ESCRIBA “Cuál es tu altura? ”
LEA Altura
Si Altura <=150 entonces
ESCRIBA “persona de altura baja”
Sino
Si Altura <=170 entonces
ESCRIBA “persona de altura media”
Sino
Si Altura>170 ENTONCES
ESCRIBA “persona alta”
Fin-Si
Fin-Si
Fin-Si
FIN

34
Estructuras Básicas
Ejemplo 7

Dado un numero entre 1 y 7 escriba su correspondiente día de la semana así:


1- Lunes 2- Martes 3- Miércoles 4- Jueves 5- Viernes 6- Sábado 7- Domingo
Exprese el algoritmo usando Pseudocódigo y diagrama de flujos.

INICIO
Dia: ENTERO
ESCRIBA “Diga un número para escribir su día”
LEA Dia
En-caso-de Dia haga
Caso 1: ESCRIBA “Lunes”
Caso 2: ESCRIBA “Martes”
Caso 3: ESCRIBA “Miércoles”
Caso 4: ESCRIBA “Jueves”
Caso 5: ESCRIBA “Viernes”
Caso 6: ESCRIBA “Sábado”
Caso 7: ESCRIBA “Domingo”
SINO: ESCRIBA “Escribió un numero fuera del rango 1-7”
Fin-Caso
35
FIN
Estructuras Básicas
Ejemplo 7

Dado un numero entre 1 y 7 escriba su correspondiente día de la semana así:


1- Lunes 2- Martes 3- Miércoles 4- Jueves 5- Viernes 6- Sábado 7- Domingo
Exprese el algoritmo usando Pseudocódigo y diagrama de flujos.

36
Estructuras Básicas
Ejercicios en clase
1. Elabora un algoritmo que sirva para identificar el tipo de
triangulo conociendo sus tres lados.
2. Se tiene registrado la producción (unidades) logradas
por un operario a lo largo de la semana (lunes a
sábado). Elabore un algoritmo que nos muestre o nos
diga si el operario recibirá incentivos sabiendo que el
promedio de producción mínima es de 100 unidades.

37
Estructuras Básicas
Solución
1. Ejercicio 1

2. Ejercicio 2

38
Estructuras Básicas
Tarea en Clase
1. Desarrolle un algoritmo que realice la sumatoria de los números
enteros comprendidos entre el 1 y el 10, es decir, 1 + 2 + 3 + …. +
10.

2. Desarrolle un algoritmo que permita leer tres valores y


almacenarlos en las variables A, B y C respectivamente. El algoritmo
debe imprimir cual es el mayor y cual es el menor. Recuerde
constatar que los tres valores introducidos por el teclado sean
valores distintos. Presente un mensaje de alerta en caso de que se
detecte la introducción de valores iguales.

3. Desarrolle un algoritmo que permita leer dos números y ordenarlos


de menor a mayor, si es el caso.

39
Estructuras Básicas
Estructuras Repetición e Iteración

• Se llaman problemas repetitivos o cíclicos es necesario


utilizar un mismo conjunto de acciones que se puedan
ejecutar una cantidad específica de veces. Los ciclos se
clasifican en:

40
Estructuras Básicas
Estructuras Repetición e Iteración

• Ciclos con un Número Determinado de Iteraciones


• (Para): Son aquellos en que el número de iteraciones se conoce antes de ejecutarse el
ciclo. La forma de esta estructura es la siguiente:

Para con <var> desde <exp1> hasta <exp2>

<tareas a repetir>

Fin_Para

41
Estructuras Básicas
Estructuras Repetición e Iteración

• Ciclos con un Número Indeterminado de Iteraciones

Son aquellos en que el numero de iteraciones no se conoce con


exactitud, ya que esta dado en función de un dato dentro del programa.

42
Estructuras Básicas
Estructuras Repetición e Iteración

• Ciclos con un Número Indeterminado de Iteraciones

Mientras : Esta es una estructura que repetirá un proceso durante “N” veces, donde “N” puede ser fijo o variable.

Mientras <condición>

Accion1

Accion2

AccionN

Fin-Mientras

43
Estructuras Básicas
Estructuras Repetición e Iteración

• Ciclos con un Número Indeterminado de Iteraciones

Hacer-Mientras: Esta es una estructura similar en algunas características, a la anterior. Repite un proceso una
cantidad de veces, pero a diferencia del Mientras Que, el Repita-Hasta lo hace hasta que la condición se cumpla.

Hacer

Accion1

Accion2

AccionN

Mientras <condicion>

44
Estructuras Básicas
Estructuras Repetición e Iteración

• Ejemplo 1:
Inicio
Realizar un algoritmo que muestre los números de uno
en uno hasta diez usando una estructura Para.
contador:Entero
Exprese el algoritmo usando Pseudocódigo y contador<-1
diagrama de flujos.

Inicio
contador NO
contador:Entero <=10
contador<-1

Para contador desde 1 hasta 10 SI


Escriba contador
contador
contador<-contador+1

Fin_Para

Fin
contador=c
ontador+1

Fin
45
Estructuras Básicas
Estructuras Repetición e Iteración

• Ejemplo 2:
Usando una estructura Mientras, realizar un algoritmo que escriba los números de uno en uno hasta 20.

Inicio
contador:Entero
contador <-1
Mientras contador < 21 haga
Escriba contador
contador <-contado+1
Fin_Mientras
Fin

46
Estructuras Básicas
Estructuras Repetición e Iteración

• Ejemplo 3:
• Realizar un algoritmo que pregunte al usuario un número comprendido en el
rango de 1 a 5. El algoritmo deberá validar el número, de manera que no
continúe la ejecución del programa mientras no se escriba un número correcto.

47
Estructuras Básicas
Estructuras Repetición e Iteración Inicio

• Ejemplo 3: num:Entero

Inicio
num:Entero Ingrese un
numero de 1 a 5
Escriba “Ingrese un numero de 1 a 5”
Hacer
Lea num
Lea num
Mientras (num>=1) y (num<5)

Fin Si
num>=1 y No
num <5

Fin
48

Вам также может понравиться