Algoritmos. ¿Qué son? formatos. Algoritmos VS programas

JosengelNavarro 1 views 27 slides Sep 26, 2025
Slide 1
Slide 1 of 27
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27

About This Presentation

Qué es un algoritmo?


Slide Content

AlgoritmosAlgoritmos

AlgoritmoAlgoritmo

Conjunto ordenado y finito de operaciones que Conjunto ordenado y finito de operaciones que
permite hallar la solución de un problema.permite hallar la solución de un problema.

Características:Características:

Fiable:Fiable: resultados exactos y precisos resultados exactos y precisos

Eficiente:Eficiente: utilizar de forma optima los recursos del utilizar de forma optima los recursos del
ordenadorordenador

Robusto:Robusto: tener prevista una respuesta clara ante tener prevista una respuesta clara ante
distintas situacionesdistintas situaciones

Transportable:Transportable: independiente del hardware y del independiente del hardware y del
sistema operativosistema operativo

Fácil de usar:Fácil de usar: interfaz amigable, mensajes claros y interfaz amigable, mensajes claros y
buena documentaciónbuena documentación

Algoritmo vs ProgramaAlgoritmo vs Programa

Programa:Programa:

Conjunto unitario de instrucciones que permite a Conjunto unitario de instrucciones que permite a
un ordenador realizar funciones diversas, como el un ordenador realizar funciones diversas, como el
tratamiento de textos, el diseño de gráficos, la tratamiento de textos, el diseño de gráficos, la
resolución de problemas matemáticos, el manejo resolución de problemas matemáticos, el manejo
de bancos de datos, etc. (RAE)de bancos de datos, etc. (RAE)

Implementación de un algoritmo en un Implementación de un algoritmo en un
determinado lenguaje de programacióndeterminado lenguaje de programación

Algoritmos para ser ejecutados por un ordenador Algoritmos para ser ejecutados por un ordenador

Los algoritmosLos algoritmos son independientes tanto del son independientes tanto del
lenguaje de programación en que se expresan como lenguaje de programación en que se expresan como
de la computadora que los ejecuta. de la computadora que los ejecuta.   


Datos:Datos: Los datos que se pueden manejar se pueden Los datos que se pueden manejar se pueden
clasificar de la siguiente forma:clasificar de la siguiente forma:

Datos de tipo numérico:Datos de tipo numérico:

Enteros:Enteros: enteros positivos y negativos. El rango enteros positivos y negativos. El rango
depende del lenguaje y del ordenadordepende del lenguaje y del ordenador

Reales:Reales: números decimales, positivos y números decimales, positivos y
negativosnegativos

Datos de tipo carácter:Datos de tipo carácter:

Letras mayúsculas o minúsculas. “a”, “A”, …Letras mayúsculas o minúsculas. “a”, “A”, …

Caracteres especiales: “/”, “+”, …Caracteres especiales: “/”, “+”, …

Números: “1”, “2”, …Números: “1”, “2”, …

Cadenas de caracteres (depende del lenguaje)Cadenas de caracteres (depende del lenguaje)

Datos de tipo lógicoDatos de tipo lógico

Verdadero y falsoVerdadero y falso
Estructura de un AlgoritmoEstructura de un Algoritmo


Estructuras de datos Internas:Estructuras de datos Internas:

Estáticas:Estáticas: Memoria en tiempo de compilaciónMemoria en tiempo de compilación

Registros:Registros: Agrupan elementos de diferente tipo Agrupan elementos de diferente tipo

Vectores:Vectores: Agrupan elementos del mismo tipo Agrupan elementos del mismo tipo
Estructura de un AlgoritmoEstructura de un Algoritmo
Registro Alumno
Nombre
Apellidos
Nota
Asig. pendiente
1 2345 76 89


Estructuras de datos Internas:Estructuras de datos Internas:

Matrices:Matrices: Vectores multidimensionales Vectores multidimensionales

Dinámicas:Dinámicas: Memoria en tiempo de ejecuciónMemoria en tiempo de ejecución

PilasPilas

ColasColas

ListasListas

ÁrbolesÁrboles

Estructuras de datos ExternasEstructuras de datos Externas

Ficheros:Ficheros: Estructura para almacenar datos en memorias Estructura para almacenar datos en memorias
externasexternas
Estructura de un AlgoritmoEstructura de un Algoritmo
1 2 3 4 5
10
1514
98
1312
76
11

Estructura de un AlgoritmoEstructura de un Algoritmo
Datos
Simples
Estructura
s
Numéricos
No Numéricos
Enteros
Reales
Carácter
Lógico
Internas
Externas
Estáticas
Dinámicas
Registros
Vectores
Matrices
Listas
Colas
Pilas
Árboles
Ficheros


Operandos:Operandos: datos que intervienen en las expresiones datos que intervienen en las expresiones
Constantes: elementos que no varían durante la
ejecución del programa.

Variables: Elementos cuyo contenido puede
modificarse durante la ejecución de un programa.
Nombre
Tipo
Valor inicial
Según su función:
Contadores, Acumuladores, Interruptores,
Variables de trabajo
Estructura de un AlgoritmoEstructura de un Algoritmo


Operadores:Operadores: elementos que realizán operaciones elementos que realizán operaciones
sobre los operandos.sobre los operandos.
Aritmeticos:+, -, *, /, MOD, DIV, ^
Alfanuméricos:+
Relacionales o condicionales:=, <, >, <=, >=, <>
Paréntesis: ()
Lógicos: NOT, AND, OR
Orden de evaluación:
(), signo, ^, * / DIV MOD, + -, concatenación,
relacionales.
En caso de igual prioridad de evaluarán de
izquierda a derecha.
Expresiones: combinación de operandos unidos
mediante operadores
Estructura de un AlgoritmoEstructura de un Algoritmo


Instrucciones:Instrucciones:
SimplesSimples

Declarativas:Declarativas: Se utilizan para declarar los objetos que se van Se utilizan para declarar los objetos que se van
a usar en el programa.a usar en el programa.

PrimitivasPrimitivas

Entrada:Entrada: toman datos del exterior toman datos del exterior

Salida:Salida: presentan al exterior resultados, mensajes, presentan al exterior resultados, mensajes,
comentarios, …comentarios, …

Asignación:Asignación: se utilizan para asignar valores a variables se utilizan para asignar valores a variables

De Control:De Control: permiten controlar la ejecución de otras permiten controlar la ejecución de otras
instrucciones bajo determinadas circunstanciasinstrucciones bajo determinadas circunstancias

Alternativas:Alternativas: Ejecutan unas instrucciones u otras Ejecutan unas instrucciones u otras
dependiendo de si se cumple o no una determinada dependiendo de si se cumple o no una determinada
condición.condición.

Repetitivas:Repetitivas: Repiten otras instrucciones un numero Repiten otras instrucciones un numero
determinado de veces.determinado de veces.

Comentarios:Comentarios: favorecen la comprensión del programa favorecen la comprensión del programa
Estructura de un AlgoritmoEstructura de un Algoritmo


Instrucciones:Instrucciones:
Compuestas:Compuestas: Conjunto de instrucciones simples Conjunto de instrucciones simples
agrupadas bajo un nombre.agrupadas bajo un nombre.

Son llamadas desde cualquier punto del programaSon llamadas desde cualquier punto del programa

Una vez ejecutadas el control vuelve a la Una vez ejecutadas el control vuelve a la
instrucción siguiente a la llamadainstrucción siguiente a la llamada
Estructura de un AlgoritmoEstructura de un Algoritmo

Diagramas de flujoDiagramas de flujo

Herramientas para poder representar de forma clara y Herramientas para poder representar de forma clara y
visual el flujo de datos y la secuencia de ejecución de visual el flujo de datos y la secuencia de ejecución de
un programaun programa

Organigramas: representación general del flujo de Organigramas: representación general del flujo de
datos en el sistema.(DFD)datos en el sistema.(DFD)

Símbolos de entradaSímbolos de entrada

Símbolos de salidaSímbolos de salida
Diagramas de flujoDiagramas de flujo
Teclad
o
Soporte genérico
Impresora
Pantalla


Símbolos de E/SSímbolos de E/S

Símbolos de procesoSímbolos de proceso

Líneas de flujoLíneas de flujo
Diagramas de flujoDiagramas de flujo
Disco magnético Disco flexible
Proceso Partición de archivosFusión de archivos
Líneas de dirección Líneas de teleproceso


Ejemplo de organigrama:Ejemplo de organigrama: Proceso de creación de Proceso de creación de
archivos con datos de las ventas de una empresa.archivos con datos de las ventas de una empresa.
Diagramas de flujoDiagramas de flujo
Entrada de
datos
Documento
s
Base
Creación de
archivo de ventas
Listado de
ventas
Visualizació
n de datos
Archivo
de
ventas


Ordinogramas: representación general del flujo de Ordinogramas: representación general del flujo de
datos del programa. Representan con mas detalle las datos del programa. Representan con mas detalle las
acciones a realizar.acciones a realizar.

Inicio y finInicio y fin

Entrada y salidaEntrada y salida

ProcesoProceso
Diagramas de flujoDiagramas de flujo


AlternativasAlternativas

Acciones compuestas (subprogramas)Acciones compuestas (subprogramas)

ConectoresConectores
Diagramas de flujoDiagramas de flujo
Simple/doble
Múltiple
Agrupamiento de líneas de flujoConector dentro de la página
N
Conector a otra
página
N


Líneas de flujoLíneas de flujo
Diagramas de flujoDiagramas de flujo


Ejemplo:Ejemplo: algoritmo que toma un número como entrada y dice si algoritmo que toma un número como entrada y dice si
es positivo, negativo, o cero.es positivo, negativo, o cero.
Diagramas de flujoDiagramas de flujo
Inicio
Leer n
n=0 n>0
Escribi
r“nulo”
Escribir
“positivo”
Escribir
“negativo

Fin
Sí N
o
N
o

El pseudocódigo describe un algoritmo utilizando una El pseudocódigo describe un algoritmo utilizando una
mezcla de frases en lenguaje común, instrucciones mezcla de frases en lenguaje común, instrucciones
de programación y palabras clave que definen las de programación y palabras clave que definen las
estructuras básicas. estructuras básicas.

PrimitivasPrimitivas

SalidaSalida
ESCRIBIRESCRIBIR

EntradaEntrada
LEER nombre – variableLEER nombre – variable

AsignaciónAsignación
nombre-var-destino = nombre-var-destino =
PseudocódigoPseudocódigo
Literal
Variable
Constante
expresion
Literal
Variable
Constante
expresion


Sentencias de controlSentencias de control

AlternativasAlternativas
Formato condiciónFormato condición

Simple:Simple:
SI condición ENTONCESSI condición ENTONCES
instrucción 1instrucción 1
instrucción 2instrucción 2
……
instrucción ninstrucción n
FIN SIFIN SI
PseudocódigoPseudocódigo
Literal
Variable
Constante
expresion
<
>
=
<=
>=
<>
Literal
Variable
Constante
expresion


Doble:Doble:
SI condición ENTONCESSI condición ENTONCES
instrucción 1instrucción 1
instrucción 2instrucción 2
……
instrucción ninstrucción n
SINOSINO
instrucción 1instrucción 1
instrucción 2instrucción 2
……
instrucción ninstrucción n
FIN SIFIN SI
PseudocódigoPseudocódigo


Múltiple:Múltiple:
EN CASO DE (variable)EN CASO DE (variable)
valor 1:valor 1: instrucción 1 instrucción 1
instrucción 2instrucción 2
… …
valor 2:valor 2: instrucción 1 instrucción 1
instrucción 2instrucción 2
… …
valor n:valor n: instrucción 1 instrucción 1
instrucción 2instrucción 2
… …
EN OTRO CASO: instrucción 1EN OTRO CASO: instrucción 1
instrucción 2instrucción 2
… …
FINFIN
PseudocódigoPseudocódigo


Repetitivas:Repetitivas:

MientrasMientras
MIENTRAS condición HACERMIENTRAS condición HACER
instrucción 1instrucción 1
instrucción 2instrucción 2
……
instrucción ninstrucción n
FIN MIENTRASFIN MIENTRAS

Repetir…hastaRepetir…hasta
REPETIRREPETIR
instrucción 1instrucción 1
instrucción 2instrucción 2
……
instrucción ninstrucción n
HASTA condiciónHASTA condición
PseudocódigoPseudocódigo


ParaPara
PARA variable DE valor inicial A valor final [incremento] PARA variable DE valor inicial A valor final [incremento]
HACERHACER
instrucción 1instrucción 1
instrucción 2instrucción 2
……
instrucción ninstrucción n
FIN PARAFIN PARA
PseudocódigoPseudocódigo


CompuestasCompuestas

DeclaraciónDeclaración
SUBPROGRAMA nombreSUBPROGRAMA nombre
instrucción 1instrucción 1
instrucción 2instrucción 2
……
instrucción ninstrucción n
FIN SUBPROGRAMAFIN SUBPROGRAMA

LlamadaLlamada
nombre-subprogramanombre-subprograma

ComentariosComentarios
**comentario**comentario
PseudocódigoPseudocódigo


EjemploEjemplo
PROGRAMA signoPROGRAMA signo
VARIABLESVARIABLES
n:enteron:entero
ALGORITMOALGORITMO
leer nleer n
SI n=0 ENTONCESSI n=0 ENTONCES
ESCRIBIR “El número es nulo”ESCRIBIR “El número es nulo”
SINOSINO
SI n>0 ENTONCESSI n>0 ENTONCES
ESCRIBIR “El número es positivo”ESCRIBIR “El número es positivo”
SINOSINO
ESCRIBIR “El número es negativo”ESCRIBIR “El número es negativo”
FIN SIFIN SI
FIN SIFIN SI
FIN PROGRAMAFIN PROGRAMA
PseudocódigoPseudocódigo