domingo, 28 de febrero de 2016


Algoritmo y Diagramas de Flujo

Lenguaje de Programación

Un lenguaje de programación es básicamente un sistema estructurado de comunicación, similar al humano, el cual nos permite comunicarnos por medio de signos, ya sean palabras, sonidos o gestos. Refiriéndonos a los aparatos, este sistema está organizado para que se entiendan entre si y a su vez interprete  las instrucciones que debe ejecutar.
El término de programación se define como un conjunto instrucciones consecutivas y ordenadas que llevan a ejecutar una tarea específica. Dichas instrucciones se denominan “código fuente”, el cual es único para cada lenguaje y está diseñado para cumplir una función o propósito específico.

*      Lenguaje de programación de bajo nivel: son aquellos utilizados para controlar el Hardware del aparato y dependen directamente de la máquina, es decir, que no pueden ser usados en apararos diferentes para los que fueron creados. Estos lenguajes son los que ordenan las operaciones esenciales para el funcionamiento del dispositivo.
*      Lenguaje de maquina: son aquellos cuyas instrucciones son directamente entendibles por la computadora. Y no necesitan traducción posterior para que la CPU pueda comprender y ejecutar el programa. Las instrucciones se expresan en términos de la unidad de memoria mas pequeña el bit (digito binario 0 o 1).

*      Lenguaje de alto nivel: son aquellos en los que las instrucciones o sentencias a la computadora son escritas con palabras similares a los lenguajes humanos (en general en Ingles), lo que facilita la escritura y comprensión del programa.


Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar una solución a un problema específico.

*      Cualitativo: son aquellos en los que se describen los pasos utilizando palabras.
*      Cuantitativo: son aquellos en los que se utilizan cálculos numéricos para definir los pasos del proceso.


Los lenguajes algorítmicos son una serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso.
Hay dos tipos de lenguaje algorítmico:
*      Gráficos: es la representación gráfica de las operaciones que realiza un algoritmo (diagrama de flujo)
*      No gráficos:  representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocódigo)


*      Análisis del programa: una vez que se ha comprendido lo que se desea de la computadora, es necesario definir
Los datos de entrada
Cuál es la información que se desea producir (salida)
Los métodos y fórmulas que se necesitan para procesar los datos

*      Diseño del algoritmo: las características de un buen algoritmo son.
Debe tener un punto particular de inicio.
Debe ser definido, no debe permitir dobles interpretaciones.
Debe  ser general, es decir, soportar la mayoría de las variantes que se puedan presentar en la definición del problema.
Debe ser finito en tamaño y tiempo de ejecución.

*      Codificación: la codificación es la operación de escribir la solución del problema en una serie de instrucciones detalladas, en un código reconocible por la computadora, la serie de instrucciones detalladas se le conoce como código fuente, el cual se escribe en un lenguaje de programación o lenguaje de alto nivel.
*      Prueba y depuración: la depuración resulta una tarea tan creativa como el mismo desarrollo de la solución, por ello se debe considerar con el mismo interés y entusiasmo.
Resulta conveniente observar los siguientes principios a realizar una depuración, ya que d este trabajo depende el éxito de nuestra solución.

*      Documentación: es la guía o comunicación escrita en sus variadas formas, ya sea enunciados, procedimientos, dibujos o diagramas.
A menudo un programa escrito por una persona, es usado por otra. Por ello la documentación sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento).

*      Mantenimiento: se lleva acabo después de terminado el programa, cuando se detecta que es necesario hacer algún cambio, de ajuste o complementación al programa para que siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que el programa este correctamente documentado.

Los algoritmos deben ser:
*      Precisos: Indicar el orden de realización en cada paso.
*      Definido: Si se sigue dos veces, obtiene el mismo resultado cada vez.
*      Finito: Tiene un inicio y un fin, también tiene un número determinado de pasos.


Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carácter, tal como “b” un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto de valores que puede tomar una variable.
*      Datos Numéricos: permiten representar valores escalares de forma numérica, esto incluye a los números enteros y los reales. Este tipo de datos permiten realizar operaciones aritméticas comunes.
*      Datos Lógicos: son aquellos que solo pueden tener dos valores ( cierto o falso ) ya que representan el resultado de una comparación entre otros datos (numéricos o alfanuméricos).
*      Datos Alfanuméricos: es una secuencia de caracteres alfanuméricos que permiten representar valores identificables de forma descriptiva, esto incluye nombres de personas, direcciones, etc. Es posible representar números alfanuméricos, pero estos pierden su propiedad matemática, es decir, no es posible hacer operaciones con ellos. Este tipo de datos se representan encerrados entre comillas. Ejemplo
“Instituto Nacional de Seguridad Social 1997”


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.

Un diagrama de flujo es la representación gráfica de un algoritmo. También se puede decir que es la representación detallada en forma gráfica de cómo deben realizarse los pasos en la computadora para producir resultados.
Esta representación gráfica se da cuando varios símbolos (que indican diferentes procesos en la computadora), se relacionan entre si mediante líneas que indican el orden en que se deben ejecutar los procesos.

 simbolos mas utilizados
Descripción: http://informatica.iesvalledeljerteplasencia.es/wordpress/wp-content/uploads/2013/05/Diagrama11.jpeg


Son identificar las ideas principales al ser incluidas en el diagrama de flujo. Deben estar presentes el autor o responsable de proceso, los autores o responsables del proceso anterior y posterior y de otros procesos interrelacionados, asi como las terceras partes seleccionadas.
Definir que se espera obtener del diagrama de flujo.
Identificar quien lo empleara y como.
Establecer el nivel de detalle requerido.
Determinar los límites del proceso a describir.


Establecer el alcance del proceso a describir. De esta manera quedara fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al siguiente proceso.
Identificar y listar las principales actividades/subprocesos que están incluidos en el proceso a describir y su orden cronológico.
Si el nivel de detalle definido incluye actividades menores, listarlas también.
Identificar y listar los puntos de decisión.
Construir el diagrama respetando la secuencia cronológica y asignando los correspondientes símbolos.
Asignar un título al diagrama y verificar que este completo y describa con exactitud el proceso elegido.

*      Favorecen la comprensión del proceso al mostrarlo como un dibujo. El cerebro humano reconoce muy fácilmente los dibujos. Un buen diagrama de flujo reemplaza varias páginas de texto.
*      Permiten identificar los problemas y las oportunidades de mejora de proceso. Se identifican los pasos, los flujos de los reprocesos, los conflictos de autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisión.
*      Muestran las interfaces cliente-proveedor y las transacciones que en ellas se realizan facilitando a los empleados el análisis de las mismas.
*      Son una excelente herramienta para capacitar a los nuevos empleados y también a los que desarrollan la tarea, cuando se realizan mejoras en el proceso.

*      Formato vertical: En él, el flujo y la secuencia de las operaciones, va de arriba hacia abajo. Es una lista ordenada de las operaciones de un proceso con toda la información que se considere necesaria, según su propósito.
*      Formato horizontal: en él, el flujo o la secuencia de las operaciones, va de la izquierda a derecha.
*      Formato panorámico: El proceso entero está representado en una sola carta y puede apreciarse de una sola mirada mucho más rápido que leyendo el texto, lo que facilita su comprensión, aun para personas no familiarizadas. Registra no solo en línea vertical, sino también horizontal, distintas acciones simultáneas y la participación de más de un puesto o departamento que el formato vertical no registra.
*      Formato arquitectónico: describe el itinerario de ruta de una forma o persona sobre el plano arquitectónico del área de trabajo. El primero de los flujogramas es eminentemente descriptivo, mientras que los utilizados son fundamentalmente representativos.

Mezcla de lenguaje de programación y español (o inglés o cualquier otro tipo de idioma) que se emplea, dentro de la programación estructurada para realizar el diseño de un programa. En esencial, el pseudocódigo se puede definir como un lenguaje de especificaciones de algoritmos. Es la representación narrativa de los pasos que debe seguir un algoritmo para dar una solución a un problema determinado. El pseudocódigo utiliza palabras que indican el proceso a realizar.


*      Ocupa menos espacio en una hoja de papel
*      Permite representar en forma fácil operaciones repetitivas complejas
*      Es muy fácil pasar de pseudocódigo a un programa en algún lenguaje de programación.
*      Si se siguen las reglas se puede observar claramente los niveles que tiene cada operación.

El diagrama estructurado N-S también conocido como diagrama de chapin es como un diagrama de flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas se pueden escribir en cajas sucesivas y como en los diagrama de flujo, se pueden escribir diferentes acciones en una caja.

Las estructuras de operación d programas son un grupo de formas de trabajo, que permiten, mediante la manipulación de variables, realizan ciertos procesos específicos que nos lleve n a la solución de problemas. Estas estructuras se clasifican de acuerdo con su complejidad en:
Descripción: http://www.desarrolloweb.com/articulos/images/algoritmos/estructura_algoritmica.gif



*      SECUENCIALES: Son aquellos en que una acción sigue otra en secuencia sus componentes son:
ASIGNACION: es el paso de valores o resultados a una zona de la memoria, esta zona será reconocida con el nombre de la variable que recibe el valor.
ENTRADA: consiste en recibir un valor o un dato, por medio de algún dispositivo de entrada.
SALIDA: se manda el resultado o mensaje, por medio de algún dispositivo de salida del computador.
*      CONDICIONALES: son aquellos que permiten comparar una variable contra otro valor, se utilizan para tomar decisiones lógicas, existen tres tipos.
SIMPLES
DOBLES
MULTIPLES

*      CICLICAS: son aquellos tipos de estructura que repiten una secuencia de instrucciones un número determinado de veces, para encontrar la solución a un problema, estas son denominados como bucles, entre los cuales encontramos.
PARA
MIENTRAS QUE

REPITA-HASTA

No hay comentarios:

Publicar un comentario