Podemos encontrar muchas definiciones de algoritmo en los textos de programación, todas ellas muy similares:
Secuencia finita de instrucciones, reglas o pasos que describen de forma precisa las operaciones que un ordenador debe realizar para llevar a cabo un tarea en un tiempo mas finito. Descripción de un esquema de comportamiento expresado mediante un repertorio finito de acciones y de informaciones elementales, identificadas, bien comprendidas y realizables a priori. Este repertorio se denomica lexico Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado.
Podemos encontrar muchas definiciones de algoritmo en los textos de programación, todas ellas muy similares:
Secuencia finita de instrucciones, reglas o pasos que describen de forma precisa las operaciones que un ordenador debe realizar para llevar a cabo un tarea en un tiempo mas finito. Descripción de un esquema de comportamiento expresado mediante un repertorio finito de acciones y de informaciones elementales, identificadas, bien comprendidas y realizables a priori. Este repertorio se denomica lexico Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado.
Secuencia finita de instrucciones, reglas o pasos que describen de forma precisa las operaciones que un ordenador debe realizar para llevar a cabo un tarea en un tiempo mas finito. Descripción de un esquema de comportamiento expresado mediante un repertorio finito de acciones y de informaciones elementales, identificadas, bien comprendidas y realizables a priori. Este repertorio se denomica lexico Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado.
En un aspecto más general:
•Conjunto ordenado y finito de pasos que permite hallar la solución de un problema.
•Una secuencia de pasos que conducen a la realización de una tarea.
•Descripción exacta de la secuencia en que se ha de realizar un conjunto de actividades tendientes a resolver un determinado tipo de problema o procedimiento.
•Conjunto de sentencias / instrucciones en lenguaje nativo, los cuales expresan la lógica de un programa.
En un aspecto más general:
•Conjunto ordenado y finito de pasos que permite hallar la solución de un problema.
•Una secuencia de pasos que conducen a la realización de una tarea.
•Descripción exacta de la secuencia en que se ha de realizar un conjunto de actividades tendientes a resolver un determinado tipo de problema o procedimiento.
•Conjunto de sentencias / instrucciones en lenguaje nativo, los cuales expresan la lógica de un programa.
Características de un Algoritmo:
Las características fundamentales que debe cumplir todo algoritmo son:
•Ser definido: Sin ambigüedad, cada paso del algoritmo debe indicar la acción a realizar sin criterios de interpretación.
•Ser finito: Un número específico y numerable de pasos debe componer al algoritmo, el cual deberá finalizar al completarlos.
•Tener cero o más entradas: Datos son proporcionados a un algoritmo como insumo (o estos son generados de alguna forma) para llevar a cabo las operaciones que comprende.
•Tener una o más salidas: Debe siempre devolver un resultado; de nada sirve un algoritmo que hace algo y nunca sabemos que fue. El devolver un resultado no debe ser considerado como únicamente “verlos” en forma impresa o en pantalla, como ocurre con las computadoras. Existen muchos otros mecanismos susceptibles de programación que no cuentan con una salida de resultados de esta forma. Por salida de resultados debe entenderse todo medio o canal por el cual es posible apreciar los efectos de las acciones del algoritmo.
• Efectividad: El tiempo y esfuerzo por cada paso realizado debe ser preciso, no usando nada más ni nada menos que aquello que se requiera para y en su ejecución
La definición de un algoritmo debe
describir tres partes : Entrada,
Proceso y Salida.
Ejemplo:
Diseñar un algoritmo para cambiar una
llanta a un coche.
•Inicio.
•Traer
una gata.
•Levantar
el coche con la gata.
•Aflojar
tornillos de las llantas.
•Sacar
los tornillos de las llantas.
•Quitar
la llanta.
•Poner
la llanta de repuesto.
•Poner
los tornillos.
•Apretar
los tornillos.
•Bajar
la gata.
•Fin.
Nuestra herramienta mental más importante
para competir con la complejidad es la abstracción. Por tanto, un problema no
deberá considerarse inmediatamente en términos de instrucciones de un lenguaje,
sino de elementos naturales del problema mismo, abstraídos de alguna manera. [Niklaus
Wirth,
Creador del Lenguaje Pascal]
Las características fundamentales que debe cumplir todo algoritmo son:
•Ser definido: Sin ambigüedad, cada paso del algoritmo debe indicar la acción a realizar sin criterios de interpretación.
•Ser finito: Un número específico y numerable de pasos debe componer al algoritmo, el cual deberá finalizar al completarlos.
•Tener cero o más entradas: Datos son proporcionados a un algoritmo como insumo (o estos son generados de alguna forma) para llevar a cabo las operaciones que comprende.
•Tener una o más salidas: Debe siempre devolver un resultado; de nada sirve un algoritmo que hace algo y nunca sabemos que fue. El devolver un resultado no debe ser considerado como únicamente “verlos” en forma impresa o en pantalla, como ocurre con las computadoras. Existen muchos otros mecanismos susceptibles de programación que no cuentan con una salida de resultados de esta forma. Por salida de resultados debe entenderse todo medio o canal por el cual es posible apreciar los efectos de las acciones del algoritmo.
• Efectividad: El tiempo y esfuerzo por cada paso realizado debe ser preciso, no usando nada más ni nada menos que aquello que se requiera para y en su ejecución
La definición de un algoritmo debe
describir tres partes : Entrada,
Proceso y Salida.
Ejemplo:
Diseñar un algoritmo para cambiar una
llanta a un coche.
•Inicio.
•Traer
una gata.
•Levantar
el coche con la gata.
•Aflojar
tornillos de las llantas.
•Sacar
los tornillos de las llantas.
•Quitar
la llanta.
•Poner
la llanta de repuesto.
•Poner
los tornillos.
•Apretar
los tornillos.
•Bajar
la gata.
•Fin.
Nuestra herramienta mental más importante
para competir con la complejidad es la abstracción. Por tanto, un problema no
deberá considerarse inmediatamente en términos de instrucciones de un lenguaje,
sino de elementos naturales del problema mismo, abstraídos de alguna manera. [Niklaus
Wirth,
Creador del Lenguaje Pascal]
Son todos aquellos algoritmos que nos
ayudan a resolver problemas diarios y que hacemos casi sin darnos cuenta que
estamos siguiendo una metodología para resolverlos.
Algunos ejemplos son:
Un cliente ejecuta un pedido a una
fábrica. La fábrica examina en su banco de datos la ficha del cliente, si el
cliente es solvente entonces la empresa acepta el pedido, en caso contrario
rechazar el pedido.
Pasos
del algoritmo:
Inicio.
•Leer
el pedido.
•Examinar
ficha del cliente.
•Si el
cliente es solvente aceptar pedido, en caso contrario rechazar pedido.
Fin.
Lenguajes Algorítmicos
•Los algoritmos pueden describirse utilizando diversos lenguajes. Cada uno de estos lenguajes permiten describir los pasos con mayor o menor detalle.
La clasificación de los lenguajes para
algoritmos puede enunciarse de la siguiente manera :
•Lenguaje
Natural.
•Lenguaje
de Diagrama de Flujo.
•Lenguaje
Natural de Programación.
•Lenguaje
de Programación de Algoritmos.
Lenguaje
Natural.
Es
aquél que describe en español, para nuestro caso, los pasos a seguir utilizando
un vocabulario cotidiano. Se le conoce como lenguaje
jerga cuando se utilizan términos
especializados de una determinada ciencia,profesión
o grupo.
Lenguaje
de Diagrama de Flujo.
Es
aquél que se vale de diversos símbolos para representar las ideas o acciones a
desarrollar. Es útil para organizar las acciones o pasos de un algoritmo pero
requiere de etapas posteriores para implementarse en un sistema de cómputo.
Lenguaje
Natural de Programación.
Son aquéllos que están orientados a la
solución de problemas que se definen de una manera precisa.
Generalmente son aplicados para la
elaboración de fórmulas o métodos científicos.
El lenguaje natural tiene las siguientes
características :
Evita la ambigüedad (algo confuso que se
puede interpretar de varias maneras).
Son precisos y bien definidos.
Utilizan términos familiares al sentido
común.
Elimina instrucciones innecesarias.
Lenguaje
de Programación de Algoritmos.
Es
aquél que se utiliza para introducir en la computadora un algoritmo específico.
Se les conoce también como "Lenguaje
de Programación".
Lenguaje
de Programación :
Es un conjunto de palabras, símbolos y
reglas sintácticas mediante los cuales puede indicarse a la computadora los
pasos a seguir para resolver un problema.
Los lenguajes de programación pueden
clasificarse por diversos criterios, siendo el más común su nivel de semejanza
con el lenguaje natural, y su capacidad de manejo de niveles internos de la
máquina.
Técnicas
de programación:
Las
técnicas de programación constituyen parte fundamental en el proceso de
desarrollo e Ingeniería del Software dentro del ámbito informático.
Cada
técnica tiene sus propias características, y distintos métodos de resolución de
problemas, así como la implementación de estándares de ciertas compañías o
instituciones, y es de gran importancia aprender a implementarlas a la hora de
adentrarse en la evolución de cualquier proyecto de desarrollo de software.
Las Técnicas de Programación son:
Programación Modular.
Programación Estructurada.
Programación Orientada a Objetos.
Programación basada en modelos
matemáticos.
No hay comentarios:
Publicar un comentario