You are on page 1of 18

UNIVERSIDAD NACIONAL DE UCAYALI

FACULTAD DE INGENIERÍA DE SISTEMAS Y DE INGENIERÍA


CIVIL
ESCUELA DE INGENIERÍA DE SISTEMAS

CURSO:
ALGORITMOS Y ESTRUCTURA DE DATOS

TEMA:
ALGORITMOS, CONCEPTOS Y EJEMPLOS.
AGENDA

 Algoritmos en la vida cotidiana.


 Conceptos de algoritmos.
 Características de los algoritmos.
 Como se elabora un algoritmo.
 Formas de representación de un algoritmo.
 Ejercicios con algoritmos secuenciales.
ALGORITMOS EN NUESTRA VIDA
COTIDIANA
ALGORITMOS EN NUESTRA VIDA
COTIDIANA
CONCEPTOS DE ALGORITMOS

Algoritmo.- es un conjunto prescrito de instrucciones


o reglas bien definidas, ordenadas y finitas que permite
llevar a cabo una actividad mediante pasos sucesivos
que no generen dudas a quien deba hacer dicha
actividad.​ Dado un estado inicial y una entrada,
siguiendo los pasos sucesivos se llega a un estado final
y se obtiene una solución.
En términos de programación, un algoritmo es una
secuencia de pasos lógicos que permiten solucionar un
problema
CARACTERISTICAS DE LOS ALGORITMOS

 Un algoritmo debe ser Preciso e indicar el orden de realización de cada paso.


 Un algoritmo debe estar Definido.- si se sigue un algoritmo dos veces se debe
obtener el mismo resultado cada vez.
 Un algoritmo debe ser Finito.-Si se sigue un algoritmo, se debe terminar en algún
momento, o sea, debe tener un número finito de pasos.
 Un algoritmo debe ser legibles.- El texto que lo describe debe ser claro, tal que
permita entenderlo y leerlo fácilmente.
 La definición de un algoritmo debe describir tres partes: entrada, proceso y salida.
 Ej. Receta de cocina.
Entrada.- Ingredientes y utensilios empleados.
Proceso.- Elaboración de la receta en la cocina
Salida.- Terminación del plato (ceviche de pato)
ETAPAS O FASES DEL DISEÑO DE
PROGRAMACION
Enunciado.-
Se debe entender claramente el enunciado del problema para que la solución vaya justamente a satisfacer lo que el problema requiera.
La solución de un problema debe estar en función de lo que el problema requiera y no en función de lo que el programador requiere.
 
Definición de Entradas y Salidas.-
Consiste en definir y establecer los datos necesarios para la solución del problema y que no se conocen( entradas), así como los datos
de salida que representan los requerimientos del problema expresados como resultados(salidas)
Nota.- Los datos de E/S se encuentran en el enunciado del problema.
 
Desarrollo Algorítmico.-
Un algoritmo no es más que la solución a un problema; desarrollar un algoritmo consiste, en desarrollar la solución de un problema.
Existen 3 herramientas: Pseudocodigo, diagramas de flujo, NASSI.
 
ETAPAS O FASES DEL DISEÑO DE
PROGRAMACION
Prueba de escritorio.-Verificar que la solución planteada satisfaga los requerimientos del problema de
acuerdo a su enunciado.
 
Codificación.- Consiste en trasladar el algoritmo desarrollado y expresado en Pseudocodigo, o en diagrama de
flujo a algún lenguaje de programación. Para lo cual es necesario tener los conocimientos suficientes de la
sintaxis del lenguaje elegido.
  
Depuración.- “agregarle lo que falta y quitarle lo que sobra” con la finalidad de que la presentación de los
resultados sean lo más agradable posible.
Eliminar cálculos innecesarios para la solución del problema.
Eliminar variables redundantes, variables que no se utilizan en el programa(lo vuelven lento al programa)
Este paso se realiza de acuerdo a los resultados obtenidos con la ejecución de los programas en el computador.
¿COMO SE ELABORA UN ALGORITMO?
1. Enunciado del problema. El enunciado del problema debe de ser  claro y completo. Es importante que conozcamos
exactamente lo que deseamos que haga el computador. Mientras esto no se comprenda, no tiene caso pasar a la siguiente etapa.
2.  Análisis de la solución general.
Entendido el problema, para resolverlo es preciso analizar: 
 Los datos de entradas que nos suministran.   
 El proceso al que se requiere someter esos datos a fin de obtener los resultados esperados. 
 Los datos o resultados que se esperan.
 Áreas de trabajo, fórmulas y otros recursos necesarios. 
 Definir condiciones si las hay.    
3.  Diferentes alternativas de solución.  
Analizando el problema, posiblemente tengamos varias formas de resolverlo. Lo importante es determinar  cuál es la mejor
alternativa: la que produce los  resultados esperados en el menor tiempo.
4. Elaboración Del Algoritmo
Un algoritmo no es más que la solución a un problema; desarrollar un algoritmo consiste, en desarrollar la solución de un
problema.
Existen 3 herramientas: Pseudocódigo, diagramas de flujo, diagrama N-S.
FORMAS DE REPRESENTAR LOS ALGORITMOS

Para representar un algoritmo se debe utilizar algún método que permita


independizar dicho algoritmo del lenguaje de programación elegido.
Las formas usuales para representar algoritmos son:
 Pseudocódigo
 Diagramas de flujo
 Diagramas N-S (Nassi. Scheiderman)
PSEUDOCODIGO
Pseudocódigo es un lenguaje de especificación (descripción) de algoritmos. Se utiliza para representar

acciones sucesivas descritas en palabras.

En pseudocódigo escribe las instrucciones del algoritmo en lenguaje natural, tal y como lo expresamos de

manera cotidiana, este procedimiento facilita su escritura en los lenguajes de programación.

 
EJEMPLO DE PSEUDOCODIGO
Ejemplo:
Realice un algoritmo que ingrese el nombre, numero por horas, costo por hora del
un trabajador; calcule el sueldo bruto y el sueldo neto con una tasa de impuesto del
0.25.
 
Inicio
Ingresar nombre, horas, precioH
Calcular:
SalarioB = horas * precio
Impuesto = 0.25 * salarioB
SalarioN = salarioB – impuesto
Visualizar
Nombre, salarioB, impuesto, salarioN.
Fin
DIAGRAMAS DE FLUJO O FLUJOGRAMAS

 Son representaciones gráficas de los pasos, necesarios que con llevan 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.
 Estos símbolos se han normalizado o estandarizado para representar los pasos
del algoritmo. Cada paso se representa a través del símbolo adecuado, que se van
uniendo con flechas, denominadas líneas de flujo, que a su vez indican el orden
en que los pasos deben ser ejecutados.
REPRESENTACION DE LOS DIAGRAMAS
DE FLUJO
SÍMBOLOS FUNCIÓN
Terminal (representa el comienzo “inicio ” y el
“fin ” de un programa).
Entrada / Salida de datos e información.
 

Proceso, cualquier tipo de operación, que pueda


ocasionar cambio de valor, formato o posición
de información almacenada en memoria.

Decisión, normalmente indica dos salidas


verdadero o falso.
Decisión múltiple, en función al resultado de la
  comparación se seguirá uno de los caminos.
 

Línea conectora

Indicador de dirección

Llamada a sub rutina o a un proceso


  determinado independiente del programa
principal-
EJEMPLO DE DIAGRAMA DE FLUJO

El ejercicio anterior se describe de la siguiente manera:

Inicio

Nombre, Horas,
PrecioH

SalarioB=horas*precioH

impuesto=0.25*salarioB

SalarioN=salarioB-impuesto

Nombre, SalarioB,
impuesto, SalarioN

Fin
DIAGRAMA NASSI-SCHENEIDERMAN (N-
S)
Inicio
 Esta forma de representar un Algoritmo se
Leer nombre, horas, precioH
caracteriza por representar los pasos como
cajas, es simple, siempre y cuando ya se
SalarioB = horas * precioH
tenga la experiencia del desarrollo de
algoritmos. Es como un diagrama de flujo Impuesto = 0.25 * salarioB
en el que se omiten las flechas de unión y
las cajas son contiguas. SalarioN = salarioB – impuesto

Escribir Nombre, salarioB, impuesto,


SalarioN

Fin
EJEMPLO CON ALGORITMOS SECUENCIALES
1. Realizar un algoritmos que calcule el promedio de 3 notas y lo muestre.

Pseudocódigo Diagrama de Flujo Diagrama N-S


INICIO INICIO
Declaración de variables INICIO
Entero n1, n2, n3, p Entero n1, n2, n3, p
Ingresar primera nota (n1) n1, n2, n3, p
Ingresar segunda nota (n2) Leer n1, n2, n3
Ingresar tercera nota (n3) n1, n2, n3
Calcular P=(n1+n2+n3)/3
p=(n1+n2+n3)/3
Visualizar promedio (p) P=(n1+n2+n3)/3
Escribir promedio(p)
FIN
p
FIN

FIN
GRACIAS
ING. MSC. CLOTILDE RIOS HIDALGO DE CERNA
Clotilde_rios@unu.edu.pe

You might also like