Está en la página 1de 21

UNIVERSIDAD PERUANA DE CIENCIAS APLICADAS

FACULTAD DE INGENIERÍA INDUSTRIAL

Algoritmos
Conceptos Básicos
Unidad 1

Coordinación de Curso: Ing. Marcela Escobar, pcsimesc@upc.edu.pe


Contenido

 Origen, definición, uso y características de los algoritmos


 Representación de algoritmos: diagrama de flujo y pseudocódigo
 Asignación de datos
 Tipos de operadores
 Tipos de datos
Origen y Definición de Algoritmo
 Algoritmo (del latín, dixit algorithmus y este del griego arithmos, que significa «número»,
quizás también con influencia del nombre del matemático persa Al-Juarismi) es un conjunto
de instrucciones que se preescriben o predefinen y que permiten llevar a cabo una
actividad mediante pasos sucesivos sin presentar ambigüedad en la ejecución o elaboración
de 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.
 Los algoritmos son el objeto de estudio de la algoritmia.
 Los algoritmos materia de este curso son específicamente “algoritmos computacionales”.
Los algoritmos en la vida cotidiana
 Los algoritmos se encuentran en nuestra vida cotidiana, los puede encontrar en la forma
como realizamos algunas actividades. Por ejemplo, en matemáticas, lógica, ciencias de la
computación, medicina, ingeniería y otras disciplinas relacionadas.
 Asimismo, se emplean algoritmos frecuentemente para resolver problemas. Algunos
ejemplos son los manuales de usuario que muestran algoritmos para usar un aparato
electrónico, o las instrucciones que recibe un trabajador de su jefe. También, se tienen
ejemplos en matemática como el algoritmo de multiplicación para calcular el producto, el
algoritmo de Euclides para calcular el máximo común divisor entre dos enteros positivos, o
el método de Gauss para resolver un sistema de ecuaciones lineales.
Características de un algoritmo
 Finito (tiene un inicio y fin)
 Preciso (posee una secuencia clara)
 Definido (al seguir un algoritmo se debe obtener el mismo resultado)
 Formal (tiene una estructura específica a fin de que pueda entenderlo
cualquier persona)
 Eficiente (utiliza de modo eficiente los recursos computacionales)

Un algoritmo computacional tiene un diseño que es independiente del


lenguaje de programación con el que se implemente.
Algoritmo computacional
 En términos computacionales, un algoritmo es una secuencia de pasos lógicos que
permite solucionar un problema específico y que mediante algún lenguaje de
programación o código computacional se automatizará su ejecución.

 Los derechos de autor del código de programa se otorgan al propietario el derecho


exclusivo sobre el uso de la obra salvo algunas excepciones. Cuando alguien crea una
obra original fija en un medio tangible, automáticamente, se convierte en el propietario
de los derechos de autor de dicha obra.
Componentes de un algoritmo

Datos de Ingresar o leer datos


entrada

Operaciones o
Proceso
instrucciones

Salida Mostrar datos o resultados


Representación de Algoritmos
 Los algoritmos se pueden expresar de muchas maneras
incluyendo al lenguaje natural, pseudocódigo y
diagramas de flujo entre otros.
 Las descripciones en lenguaje natural pueden
 presentarse ambiguas y extensas.
 Los pseudocódigos y diagramas de flujos evitan
ambigüedad y son representaciones más estructuradas
para representar algoritmos (tenga en cuenta que se
mantienen independientes de todo lenguaje de
programación específico).
 En este curso, se usará pseudocódigo y diagrama de
flujo para representar un algoritmo.
Representación de Algoritmos
• Descripción de alto nivel • Descripción formal
• X Ej. D.F. “QUIERO CAFÉ”

Modelo Matemático
Problema

Explicación
INICIO
Establecer Seleccionar Verbal
o Esquema
No ¿Haycafé Sí
General hecho?

Hacer Calentar y
café servir café
Problem

Modelo Matemático

Explicación

Obtener Aplicar Obtener No ¿Estabien Sí


la suma operación el de dulce?
a

de dos
numeros aritmética resultado Agregar
SUMA azúcar
FIN
Diagrama de Flujo y Pseudocódigo
El diagrama de flujo:
 Representación gráfica
 Emplea símbolos por tipo de instrucción

Los símbolos pueden representan operaciones de


lectura o ingreso de datos, evaluación de
condiciones, repetición de instrucciones, mostrar
respuestas, subprogramas, etc.
Elementos gráficos para su representación
Pseudocódigo
 Es la descripción de un algoritmo diseñado para la lectura Problema:
humana (en lenguaje común), no para el computador Calcular el área de una
(lenguaje de programación o código de máquina). circunferencia.
 Omite detalles particulares del lenguaje de programación
tales como: sintaxis rígida, declaración de variables y Inicio
Pi=3.141592
constantes, operadores específicos, etc.
Ingresar Radio
Si Radio > 0 Entonces
Área = Pi * (Radio^2 )
Mostrar Área
Fin-Si
Fin
Asignación de datos
Ejemplos de Tome en cuenta que los datos de un algoritmo cambian denombre
asignación en el código de programación y se denominan “variables” o
“constantes”
• Datos Variables: aquellos elementos dentro de un algoritmo que podrán tomar
diferentes valores a lo largo de la ejecución del mismo.
N 10
• Datos Constantes: mantendrá el mismo valor a lo largo del algoritmo y para
N A+5
ello es necesario hacer una asignación.
T "MARIA"
Pi 3,1416
Ejemplos de constantes:
EL símbolo  indica proceso de asignación de un
valor de pi, un % de descuento, una tasa financiera,etc.
valor. De igual forma, podría utilizar el símbolo = solo
que el diseñador deberá diferenciar si está realizando Ejemplo de variable:
un proceso de comparación o de asignación! el número de encuestados, edad, la fecha de ingreso, etc..
Nombres de datos en Algoritmos

 Deben empezar con letras del abecedario


 No se utilizan caracteres especiales como * + / : etc.
 El espacio en blanco no está permitido, pero puede
usar el guión bajo _
 No es sensible a las mayúsculas, es decir el dato en
mayúsculas o minúsculas es el mismo para algunos
lenguajes de programación.
 El nombre debe ser nemotécnico (fácil recordación)
Tipo de Operadores
• Operadores Aritméticos • Operadores de
Operador Operación Operador Operación
comparación
+ Suma / División
Operador Operación
- Resta \ Cociente de la división entera
= Igual
* Multiplicación Mod-Residuo Residuo de la división entera
<> Distinto
^ Exponenciación ¡Recuerde que los operadores tiene una prioridad!
< Menor
> Mayor
• Operadores Lógicos Operador Símbolo En VBA
Negación NO NOT <= Menor o igual
Conjunción Y And >= Mayor o igual
Disyunción O Or

El operadores de texto & para concatenar datos. Tenga en cuenta que la priorización de operaciones
Una vez concatenado toda la cadena será texto. obedecen a la prioridad de los operadores y el uso de
Ejemplo: “María tiene “ & Edad & “ Años” los paréntesis son útiles en el orden de cálculo.
Tipos de Datos
 El tipo de dato es un atributo que indica la
característica o restricción del dato.
 En algoritmos, se tienen los tipos de datos
Entero, Real, Texto o alfanumérico, Lógico,
entre otros.
Ejemplos de Diagrama de Flujo y Pseudocódigo
Diagrama de FlujoNICIO Pseudocódigo

Inicio INICIO
El verbo más utilizado
Ingresar Nro1 para obtener el dato es
Nro1 + Nro2
Ingresar Nro2 “INGRESAR”, pero
Resultado = Nro1 + Nro2 también puede utilizar el
Resultado = Nro1 + Nro2
verbo “LEER” u
Mostrar Resultado
“OBTENER”.
Resultado FIN

FIN
Ejemplos
Elabore un algoritmo y un diagrama de flujo que permitan calcular el área de
un triángulo.

Datos de Entrada Proceso Data de Salida: Información


base, altura Área = (base*altura)/2 Área

Donde: base es el dato que almacena el valor de la base y


altura almacena el valor de la altura del tríangulo
Solución
Tabla de variables Inicio
Dato Descripción Tipo de Validación o
Pseudocódigo
dato restricción
base, altura
base Base del Real >0
Inicio
triángulo
Leer base, altura
altura Altura Real >0
área = (base*altura)/2
área Área Real área = (base * altura) / 2 Mostrar área
Fin

área

Diagrama de flujo
Fin
Resumen
 A diferencia de la descripción en lenguaje natural, la
descripción formal evita ambigüedad de ejecución.
 La expresión formal ayuda a establecer una
comunicación clara tanto para quien elabora el
algoritmo como para quien lo ejecute.
 La expresión formal se podrá implementar en cualquier
lenguaje de programación.
Referencias
 Elaboración y aportes a la presentación: Docentes del Curso
 Imágenes y ejemplos:
 https://es.slideshare.net/avilasz/diagramas-de-flujo-8929746
 https://www.universoformulas.com/matematicas/geometria/triangulo/
 https://www.monografias.com/trabajos93/tecnologia- computacion/tecnologia-computacion.shtml

Referencia Bibliográfica:
https://es.wikipedia.org/wiki/Algoritmo
Joyanes Aguilar, L.,Fundamentos de Programación: Algoritmos, estructura de datos y objetos, McGrawHill, 4ta edición, Madrid
Senmache Sarmiento, J.M., Informática Para los Negocios- Visual Basic para Aplicaciones de MS Excel, e-informatics book, Perú.

También podría gustarte