lunes, 23 de noviembre de 2009

ALGORITMO Y DIAGRAMA DE FLUJO

CONCEPTOS BASICOS.

HISTORIA DE LOS ALGORITMOS.
La palabra algoritmo proviene del nombre del matemático llamado Muhammad ibn Musa al-Khwarizmi que vivió entre los siglos VIII y IX. Su trabajo consistió en preservar y difundir el conocimiento de la antigua Grecia y de la India.
la palabra algoritmo se referencia a las reglas de uso de la aritmética utilizando dígitos árabigos. En el siglo XVIII la palabra ha cambiado de forma que en su definición se incluye a todos los procedimientos finitos para resolver problemas o realizar determinadas tareas.
Se produjo el primer algoritmo escrito para un computador. La autora fue Ada Byron, en cuyos escritos se detallaban la máquina analítica en 1842 para el motor de Charles Babbage. Por ello que es considerada por muchos como la primera programadora aunque, desde Charles Babbage, nadie completó su máquina, por lo que el algoritmo nunca se implementó.
La falta de rigor matemático en la definición de "procedimiento bien definido" para los algoritmos trajo algunas dificultades a los matemáticos y lógicos del siglo XIX y comienzos de XX. Este problema fue en gran parte resuelto con la descripción de la máquina de Turing, un modelo abstracto de computadora formulado por Alan Turing.
CONCEPTO DE ALGORITMO.
1-. Es una lista bien definida, ordenada y finita de operaciones que permite hallar la solución a un problema. Dado un estado inicial y una entrada, a través de pasos sucesivos y bien definidos se llega a un estado final, obteniendo una solución.
2-. Es un método para resolver un problema mediante una serie de pasos definidos, precisos y finitos.
3-. Es la secuencia finita y ordenada y no ambigua de instrucciones que resuelve determinado problema.
PUNTO DE VISTA PERSONAL.
Euna serie de pasos relacionados entre si con un orden y una secuencia bajo una seria de reglas para la solucion de problemas.
TIPO DE ALGORITMOS.
Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras.
Cuantitativos: Son aquellos en los que se utilizan cálculos numéricos para definir los pasos del proceso.
CONCEPTO DE CONSTANTE.
1-. Es una incógnita que se utiliza en los lenguajes de programación que no puede cambiar su contenido en el transcurso del programa.
2.- Es justamente el opuesto a variable, que corresponde a aquellos objetos-dato que pueden recibir nuevas asignaciones de valor a lo largo del programa. Dicho en otras palabras: entidades cuyo valor solo es conocido en tiempo de ejecución.
3.- En programación, las constantes son tipos de datos (con valores numéricos o de cadena) que permanecen invariables, sin posibilidad de cambiar el valor que tienen durante el curso del programa.
Una constante corresponde a una longitud fija de un área reservada en la memoria principal del ordenador, donde el programa almacena valores fijos.
Por ejemplo:
El valor de pi = 3.141592...
PUNTO DE VISTA PERSONAL.
Dato numerico o alfanumerico cuyo valor no puede cambiar durante la ejecucion del programa.
CONCEPTO DE VARIABLE.
1.- En programación, las variables son estructuras de datos que, como su nombre indica, pueden cambiar de contenido a lo largo de la ejecución de un programa. Una variable corresponde a un área reservada en la memoria principal del ordenador pudiendo ser de longitud.
2.- En programación es una estructura que contiene datos y recibe un nombre único dado por el programador, mantiene los datos asignados a ella hasta que un nuevo valor se le asigne o hasta que el programa termine.
3.- Son "espacios" de memoria en la que se almacena un valor. Se usarán para guardar en memoria los valores numéricos.
PUNTO DE VISTA PERSONAL.
Es un espacio en la memoria de la computadora que permite almacenar temporalmente un dato durante la ejecucion de un proceso, su contenido puede cambiar durante la ejecucion del programa.
CONCEPTO DE CONTADOR.
1.- Una variable para llevar la cuenta en un algoritmo. Suelen nombrarse con las letras i, j, k...
2.- En programación, se llama contador a una variable cuyo valor se incrementa o decrementa en un valor fijo (en cada iteración de un bucle).
3.- Pequeño programa que se instala generalmente en la página principal de un sitio Web con el propósito de contar el número de visitas o de impresiones (hits) que éste produce.
PUNTO DE VISTA PERSONAL.
Son variables cuyo valor se incrementa en una cantidad constante cada vez que se introduce un determinado proceso.
CONCEPTO DE ACUMULADOR.
1.- Es un registro en donde se almacenan los resultados lógicos y aritméticos intermedios. Sin un registro acumulador, sería necesario escribir el resultado de cada cálculo (suma, multiplicación, etc.) en la memoria primaria, tal vez para leerse y ser usado sólo para la siguiente operación.
2.- Es un registro en el que son almacenados temporalmente los resultados aritméticos y lógicos intermedios que serán tratados por la Unidad aritmético-lógica (ALU).Sin un registro como un acumulador, sería necesario escribir el resultado de cada cálculo (como adición, multiplicación, desplazamiento (shift), etc.) en la memoria principal, quizás justo para ser leída inmediatamente otra vez para su uso en la siguiente operación.
3.- En programación, se llama acumulador a una variable cuyo valor se incrementa o decrementa en un valor que no tiene por qué ser fijo (en cada iteración de un bucle). Un acumulador suele utilizarse para acumular resultados producidos en las iteraciones de un bucle.
PUNTO DE VISTA PERSONAL.
Es una variable que contiene informacion cuya mision es almacenar cantidades variables resultantes de sumas en una programacion.
CONCEPTO DE PSEUDOCODIGO.
1.- Considerado como un lenguaje falso, el pseudocódigo es un lenguaje intermedio entre nuestro lenguaje y el de programación, debido a que quien lo utiliza se guía por una serie de normas pero sin llegar a usar una estructura tan rígida como la del lenguaje de programación.
2.- En programación, lenguaje artificial e informal útil para programadores para el desarrollo de algoritmos. No es un lenguaje de programación verdadero y, por lo tanto, no puede ser compilado y ejecutado.
3.- El pseudocódigo es un lenguaje de programación algorítmico; es un lenguaje intermedio entre el lenguaje natural y cualquier lenguaje de programación específico, como son: C, FORTRAN, Pascal, etc. No existe una notación formal o estándar de pseudocódigo, sino que, cada programador puede utilizar la suya propia.