UNIVERSIDAD VERACRUZANA FACULTAD DE CIENCIAS QUIMICAS

ALGORITMOS COMPUTACIONALES Y PROGRAMACIÓN

BAUTISTA JIMÉNEZ LUIS ANGEL IQ 301

Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas máquinas no pueden funcionar.
Al conjunto general de programas, se le denomina software, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital.

OPERACIONES PRIMITIVAS ELEMENTALES .ESTRUCTURA DE DATOS COMPONENTES DE UN PROGRAMA ESTRUCTURAS DE CONTROL.

• Son los métodos que existen para dirigir el flujo de acciones que la computadora deberá ejecutar sobre los datos Estructuras de control. . manejados por el programa.Estructura de datos • Métodos que se emplean en programación para organizar y representar la información en una computadora. Operaciones primitivas elementales • Son las operaciones básicas que la computadora sabe hacer y que ejecutan sobre los datos para darle entrada. transformarlos y darles salida convertidos en información.

 Un lenguaje de programación" es un lenguaje diseñado para describir el conjunto de acciones consecutivas que un equipo debe ejecutar. Por lo tanto. es un modo práctico para que los seres humanos puedan dar instrucciones a un equipo. .

. Caracteres numéricos (dígitos del 0 al 9) c.]. Caracteres especiales (símbolos especiales tales como [. un vocabulario y una gramática. Es el conjunto de elementos estructurales del lenguaje: a. [.Todo lenguaje está compuesto por un alfabeto. [#]. Alfabeto o conjunto de caracteres. [:]. [:]. [/] y muchos otros. Caracteres alfabéticos (letras minúsculas y mayúsculas) b.  CARACTERISTICAS DE LOS LENGUAJES DE PROGRAMACION 1.]. [$].

Es el conjunto de lineamientos que se deben respetar para construir frases. Por ejemplo para leer datos debemos seguir ciertos lineamientos. else. las palabras program. end. 2. también para imprimir. tienen un significado predeterminado en el lenguaje Turbo Pascal. oraciones o instrucciones. then. Por ejemplo. while. begín. Mediante la gramática y la sintaxis logramos transmitirle a al computadora lo que deseamos.  Gramática. repeat. if. Es el conjunto de palabras válidas o reservadas en el lenguaje Turbo Pascal. Vocabulario o léxico. for. etcétera. integer. real. string. .

CARACTERISITICAS DE UN BUEN PROGRAMA Un programa bien escrito debe tener ciertas características básicas que le permitan operar correctamente. las características serán las siguientes:  Operatividad. es la capacidad para cumplir determinada función (o funciones) de modo aceptable .

Un programa puede hacerse más legible dándole cierto formato al código. Legibilidad. utilizando el sangrado (indentación) para reflejar las estructuras de control del programa. así que es conveniente no utilizar características especiales del hardware ni “facilidades” especiales del software. Un programa transportable es el que puede ejecutarse en otro entorno sin hacer modificaciones importantes. Mientras menos modificaciones se hagan será más transportable.  Transportabilidad. . e insertando espacios o tabuladores.

Dividir el programa en un número de módulos pequeños y fáciles de comprender puede ser la contribución más importante a la calidad del mismo.  · Modularidad. Los módulos tienen la virtud de minimizar la cantidad de código que el programador debe comprender a la vez. Claridad. . y no más. El programa debe indicar claramente lo que el programador desea. Esta característica se refiere a la facilidad con que el texto del programa comunica las ideas subyacentes. Cada módulo debe realizar sólo una tarea específica.

el paradigma o modelo que se usa ha evolucionado constantemente. la forma . En la siguiente figura se esquematiza la evolución: Programación Programación tradicional Programación modular Orientada a objetos Programación estructurada Programación con abstracción de datos . Sin embargo las bases de la programación no han cambiado. simplemente se han ido añadiendo nuevos conceptos y nuevas estructuras. Desde que la computadora apareció como tal.

La estructura lógicas de control que se utilizaban eran: la secuenciación. IF-THEN-ELSE y DO (en la actualidad conocida como FOR) La arquitectura de un programa consistía de un solo módulo como se muestra a continuación : Programa  Este módulo estaba formado por una secuencia ordenada de instrucciones: instrucción 1. . instrucción 2. I-THEN. COBOL Y BASIC.L   La programación tradicional tuvo sus inicio en la década de 1950. instrucción 3…. Los lenguajes de programación que se utilizaban eran los predecesores de FORTRAN.

 Tuvo sus inicios a mediados de la década de 1960. Los lenguajes de programación que se utilizaban eran PASCAL. lenguaje C. La arquitectura de un programa consistía como se muestra a continuación: Módulo uno DATOS PROGRAMA Módulo dos Módulo tres Cada módulo estaba formado por un conjunto ordenado de instrucciones: Modulo uno Instrucción 1 Instrucción 2 Instrucción N Modulo dos instrucción 1 instrucción 2 instrucción N Modulo tres instrucción 1 instrucción 2 instrucción N . COBOL estructurado. entre otros.

que en un módulo o paquete se encapsulan los datos y las funciones que lo manipulan. emerge el concepto de encapsulación. El lenguaje de programación que se utilizó fue MODULA 2. Tuvo sus inicios a fines de la década de 1970 y principios de la década 1980. . El lenguaje de programación que se utilizó fue ADA.  Se generó en la década de 1980. con esto emerge el concepto de Tipos Abstractos de Datos (TAD).

Codificacion del problema 5. 1. Análisis del problema 3. Diseño del programa 4. 2. Definición del problema. Implantación del problema 6. Mantenimiento del programa .EL PROCESO DE PROGRAMACIÓN  Elaborar un programa de computadora implica llevar a cabo una serie de pasos secuenciales y cronológicos que comienzan con la detección y definición del problema y conducen a la implantación del programa que lo soluciona.

.EL PROCESO DE PROGRAMACION  Elaborar un programa e computadora implica llevar a cabo una serie de pasos secuenciales y cronológicos que comienzan con la detección y definición del problema y conducen a la implantación del programa que lo soluciona. En las siguientes diapositivas se describen los pasos a seguir.

Java y C#. Se genera a finales de la década de 1980. Los principales lenguajes de programación que se utilizan son C++. La arquitectura consiste en un conjunto de objetos y cada objeto se compone por datos y un conjunto de métodos. porque permite una mayor pulverización o segmentación de los programas a través de los objetos. METODO N . donde cada método está formado por u conjunto de instrucciones: OBJETO 1 OBJETO 2 DATOS METODO 1 METODO 2 DATOS METODO 1 METODO 2 MÉTODO N La programación orientada a objetos permite manejar mejor la complejidad de los programas.

se debe identificar el problema y comprender la utilidad de la solución que se alcance.1. DEFINICIÓN DEL PROBLEMA.  Este proceso inicia cuando surge la necesidad de resolver algún problema mediante la computadora. Para empezar. .

.   La primera etapa consisten definir los resultados esperados. La segunda etapa consiste en identificar los DATOS que se tienen como materia prima y que constituirán la entrada del programa. La tercera etapa tiene como finalidad determinar el PROCESO necesario para convertir los datos de entrada en la información que se tendrá a la salida.

Prueba de escritorio.Durante este paso se procede a diseñar la lógica para la solución del problema a. se estructura la secuencia lógica y cronológica de los pasos que la computadora deberá seguir. . y se comprueban a mano los resultados a fin de validar la correcta operación del algoritmo. utilizando alguna técnica convencional como. Elaborar el algoritmo. los diagramas de flujo o los diagramas de Warnier. Se simula el funcionamiento del algoritmo con datos propios respecto al problema. b.

probarse y depurarse. El programa codificado debe editarse. compilarse. dado que ya tenemos diseñado el programa. sólo nos concretamos a convertir las acciones del algoritmo en instrucciones de computadora. En este paso se procede a codificar el programa en el lenguaje de programación que vayamos a utilizar. . Este proceso es sumamente sencillo.

. Debe ser supervisado continuamente para detectar posibles cambios o ajustes que sea necesario realizar. El programa se pone a funcionar y entra en operación normalmente dentro de la situación específica para la que se desarrolló.

al 3 o a cualquier otro. El programa que está en operación podría requerir cambios o ajustes en sus datos. proceso o resultados. ya que si surge la necesidad de darle mantenimiento tendremos que regresar al punto uno para definir de nuevo el problema y si la modificación es pequeña podríamos ir al paso 2. . esto implica que eventualmente necesitará mantenimiento para adecuarlo a la dinámica cambiante de las empresas o de los problemas. Lo anterior nos sitúa en una dinámica infinita.

en otras palabras. que es el diseño del programa.En el proceso de programación hay un paso que es crucial al momento de desarrollar un programa. Los pasos del algoritmo deben tener las siguientes características:  Ser simples. claros. . diseñar o elaborar el algoritmo de la solución. exactos.  Tener un orden lógico  Tener un principio y fin. precisos.

diagramas de flujo(en desuso con la programación estructurada). diagramas de Chaplin.EJEMPLO Existen diversas técnicas específicas para diseñar algoritmos (programas). diagramas de Warnier. Diagrama de flujo que expresa un algoritmo para calcular la raíz cuadrada de un número. pseudocódigo. . por ejemplo. etc.