ESTRUCTURA GENERAL DE UN ALGORITMO
UNIVERSIDAD TECTICA ESTATAL DE QUEVEDO
UNIDAD DE ADMISION Y NIVELACION
Misión y Visión de la UTEQ
Unidad 1: Estructura general de un Algoritmo
¿Qué es algoritmo?
Se puede entender un algoritmo como una secuencia de pasos finitos bien definidos que resuelven un problema. Por ejemplo, la ejecución de tareas cotidianas tan simples como cepillarse los dientes, lavarse las manos o seguir el manual de instrucciones de armado de un mueble, se pueden ver como un algoritmo.
Un
algoritmo es un método para resolver un problema (Libro de Luis Joyanes
Aguilar) Un algoritmo consiste en una lista ordenada de operaciones que tienen
el propósito de buscar la solución a un problema en matemática, informática y
disciplinas afines. Es un Procedimiento para resolver un problema. Un grupo
finito de operaciones organizadas de manera lógica y ordenada que permite
solucionar un determinado problema. Un algoritmo es un conjunto de
instrucciones elaboradas con la finalidad de resolver un problema.
Las partes que se utilizan en la
construcción de un algoritmo son:
•
Comandos
•
Datos
•
Variables y contantes
•
Operadores
Elementos de un Algoritmo
• ENTRADA:
Corresponde al insumo, a los datos necesarios que requiere el proceso para
ofrecer los resultados esperados.
• PROCESO:
Pasos necesarios para obtener la solución del problema o la situación
planteada.
• SALIDA: Resultados arrojados por el proceso como solución.
¿QUÉ ES UN ALGORITMO INFORMÁTICO?
Un algoritmo
informático es
un conjunto de instrucciones definidas, ordenadas y acotadas para resolver un
problema, realizar un cálculo o desarrollar una tarea. Es decir, un algoritmo
es un procedimiento paso a paso para conseguir un fin. A partir de un estado e
información iniciales, se siguen una serie de pasos ordenados para llegar a la
solución de una situación.
En programación, un algoritmo supone
el paso
previo a ponerse a escribir el
código.
Primero debemos encontrar la forma de obtener la solución al problema (definir
el algoritmo informático), para luego, a través del código, poder indicarle a
la máquina qué acciones queremos que lleve a cabo. De este modo, un
programa informático no sería más que un conjunto de algoritmos
ordenados y codificados en
un lenguaje de programación para poder ser ejecutados
en un ordenador.
No
obstante, los algoritmos no son algo exclusivo de los ámbitos de las
matemáticas, la lógica y la computación. Utilizamos numerosos algoritmos para
resolver problemas en nuestra vida cotidiana. Algunos de los ejemplos más
habituales son los manuales de instrucciones o las recetas de cocina.
Partes de un algoritmo informático
Las tres
partes de un algoritmo son:
- Input (entrada). Información
que damos al algoritmo con la que va a trabajar para ofrecer la solución
esperada.
- Proceso. Conjunto
de pasos para que, a partir de los datos de entrada, llegue a la solución
de la situación.
- Output (salida). Resultados,
a partir de la transformación de los valores de entrada durante el
proceso.
De
este modo, un algoritmo informático parte de un estado inicial y de unos
valores de entrada, sigue una serie de pasos sucesivos y llega a un estado
final en el que ha obtenido una solución.
Características de los algoritmos
Asimismo, los algoritmos presentan una serie de características comunes. Son:
- Precisos: Objetivos, sin ambigüedad.
- Ordenados: Presentan una secuencia clara y
precisa para poder llegar a la solución.
- Finitos:
Contienen un número determinado de
pasos.
- Concretos: Ofrecen una solución determinada
para la situación o problema planteados.
- Definidos:
El mismo algoritmo debe dar el mismo resultado al recibir la misma
entrada.
Tipos de algoritmos y ejemplos
Existen diversas clasificaciones de
algoritmos, en función de diferentes criterios. Según su sistema
de signos (cómo describen los pasos a seguir), se distingue entre
algoritmos cuantitativos y cualitativos, si lo hacen a través de
cálculos matemáticos o secuencias lógicas. Asimismo, si requieren o no el
empleo de un ordenador para su resolución, se clasifican en computacionales y no
computacionales.
Pero, si nos fijamos en su función (qué hace) y su estrategia para llegar a la solución (cómo lo hace), encontramos muchos más tipos de algoritmos. Destacamos los siguientes cinco tipos de algoritmos informáticos:
Elementos
de un algoritmo
Datos:
El
dato es una representación simbólica (numérica, alfabética, algorítmica, entre
otros.), un atributo o característica de una entidad. Los datos describen
hechos empíricos, sucesos y entidades.
Tipos de datos:
Características y
elementos de un algoritmo
Las características
fundamentales que debe cumplir todo algoritmo son:
• Un
algoritmo debe ser preciso e indicar el orden de realización de cada paso.
• Un
algoritmo debe estar definido. Si se prueba un algoritmo dos veces, se debe
obtener el mismo resultado cada vez. (Prueba de escritorio)
• Un
algoritmo debe ser finito. El algoritmo se debe terminar en algún momento; o
sea, debe tener un número finito de pasos.
• Un
algoritmo debe ser legible: El texto que lo describe debe ser claro, tal que
permita entenderlo y leerlo fácilmente.
• Un
algoritmo debe definir tres partes: Entrada, Proceso y Salida.
Algoritmo Naturales
Ejemplos:
Comprar una camisa
1. Busco
una tienda o almacén de ropas
2. Miro
el modelo y precios de la camisa
3. Probar
la camisa si le queda
4. Llevar
la camisa a caja
5. Sacar
el dinero en efectivo o en tarjeta para pagar
6. Salir
de la tienda de camisa
Proceso para lavar ropa
1. Buscar
la ropa sucia
2. Dirigirse
a la lavadora
3. Conectar
la lavadora a la corriente
4. Poner
la ropa sucia dentro de la lavadora
5. Llenar
agua
6. Poner
detergente y suavizante
7. Enciende
la lavadora con temporizador
8. Esperar
que lave
9. Sacar
la ropa y ponerla en la secadora
10. Después de secar tender la ropa
Constante y variable
Una constante es un dato
numérico o alfanumérico que no cambia durante la ejecución del programa
Ejemplos: pi = 3.1416, sueldo básico=400, valor_iva=12%, velocidad
luz=3000000 Gravedad=9,81, grados_ebullicion_agua=100, num_euler=2,7182,
Valo_ini=200
Una variable es un espacio en
la memoria de la computadora que permite almacenar temporalmente un dato
durante la ejecución de un proceso, su contenido puede cambiar durante la
ejecución del programa.
Para poder reconocer una variable en la memoria de la computadora, es
necesario darle un nombre con el cual podamos identificarla dentro de un
algoritmo.
Ejemplo: área = pi * radio ^ 2
‘Las variables son : el radio, el área y la constate es pi
Suma=a+b, multi=a*1
Utilización de variables
Una
vez declarada e iniciada una variable, es el momento de utilizarla. Esta es la
parte que presenta un mayor abanico de posibilidades. A continuación tenemos
unas cuantas:
Incrementar
su valor: i := i + 1
Controlar
un bucle: for i:=1 to 10 do...
Determinar
una condición: if i<10 then .. .
Participar
en una expresión: n :=(Max – Min) mod i = 5
I= 10
Max=150
Mi=25
Diferencia
de constante y variable
Una constante es un elemento de datos con nombre con un valor
predefinido, mientras que una variable es un elemento de datos con nombre cuyo
valor puede cambiar durante el curso de la ejecución de un programa. Las
variables pueden ser globales o locales.
Todos los tipos de datos se representan como uno de
estos tres tipos de datos básicos:
Int
Tipo de datos
entero ( + - seguido de 1 o más dígitos entre 0 y 9).
Real
Coma flotante (+-
seguido de cero o más dígitos 0–9). Coma decimal seguida de 1 o más dígitos
0-9. Tenga en cuenta que todos los números se almacenan internamente como
Float.
String
Cualquier cadena
de caracteres Unicode válida especificada entre comillas.
Constantes
Una constante es
un elemento de datos con nombre con un valor predefinido. No se puede cambiar
el valor asignado a una constante predefinida. Las constantes predefinidas son:
NULL
Una referencia
vacía. Parecido a un puntero vacío. Tenga en cuenta que no es lo mismo que una
cadena de caracteres nula "".
TRUE
Equivalente al
número 1.
FALSE
Equivalente al
número 0.
Ejemplo de Constantes y variables
Const
Min = 0;
Max = 100;
iva = 12;
var
i : integer;
i=1
Expresiones
Las
expresiones son combinaciones de constantes, variables, símbolos de operación,
paréntesis y nombres de funciones especiales. Las mismas ideas son utilizadas
en notación matemática tradicional; por ejemplo:
Var
a=
100
b=
10
c=
20
Total=
a + (b + gravedad) + c
100+(10+9,8)+20
=139,8
Celsius
= 30
Fahrenheit
= (Celsius *9/5)+32 = 86
Una
expresión consta de operandos y operadores. Según sea el tipo de objetos que
manipulan, las expresiones se clasifican en:
•
Aritméticas,
•
Relacionales,
•
Lógicas,
•
Carácter
Ejemplos:
Ø 4*6/5+7-9=
2.8
Ø 7^9/5-5(6-5)*4=
8,070
Ø 7/9*3+8(3+8)=
90.33
ESTRUCTURA
GENERAL DE UN ALGORITMO
COMPILACIÓN Y ERRORES
CLASIFICACIÓN DE ERRORES:
Los errores en un programa o algoritmo se pueden clasificar en distintos
tipos. Atendiendo a los efectos que ocasionan se podría hablar de errores que
impiden la ejecución de un programa y errores que no impiden la ejecución de un
programa. Atendiendo al momento en que se producen podríamos hablar de errores
de compilación y errores de ejecución.
Atendiendo
a los efectos que ocasionan:
Atendiendo al momento en que se producen:
Cuando una vez tenemos escrito el código del programa y ordenamos su
ejecución, se produce una “lectura de interpretación” previa llamada
compilación. Recordemos que el ordenador no interpreta directamente las órdenes
que le damos sino que necesita una traducción. Si durante esa traducción se
detecta un problema el programa no comienza a ejecutarse. Lo más habitual es
que se detecten fallos de sintaxis, ciertos procesos no válidos e incluso
errores lógicos tipo bucle infinito en algunas circunstancias. Si el programa
no compila estamos obligados a realizar las correcciones oportunas antes de
poder ejecutarlo.
Durante la ejecución del programa pueden producirse errores previsibles
porque se derivan del código o imprevisibles por ser su origen externo
(entradas incorrectas de usuario, problemas con ficheros, etc.).
Un error de ejecución puede ser gestionado (vía detección o vía lógica)
pero uno de compilación no.
Atendiendo a la naturaleza del error los clasificaremos en:
Y según el tratamiento que reciben:
Por su facilidad de detección tendríamos:
Hay errores cuya clasificación no es sencilla. Por ejemplo, si al usuario se le pide un número entero durante la ejecución del programa, pero introduce uno real, se puede producir un error de ejecución por proceso no válido. Sin embargo, el trasfondo del error es lógico: el programa no está preparado para reaccionar ante una situación que es posible. A estos errores los llamaremos errores de fondo lógico.
Comentarios
Publicar un comentario