REV... FECHA:.../.../...

Tamaño: px
Comenzar la demostración a partir de la página:

Download "REV... FECHA:.../.../..."

Transcripción

1 Profesor/a...ZIGOR ALDAZABAL MIKEL SORRONDEGUI... Irakaslea Alumno/a... Ikaslea Curso...PROGRAMACIÓN EN C++ Y VISUAL BASIC... Kustsoa Alorgune...TELECOMUNICACIONES... Curso Ikasturte Instituto Especifico Formación Profesional Superior BIDASOA Goi-mailako Berariazko Lanbide Heziketa Institutua Tfno Fax Elizatxo IRUN (Gipuzkoa) - secretaria@fpbidasoa.org REV... FECHA:.../.../...

2

3 Conceptos de programación INDICE 1. Conceptos básicos Programación Algoritmo Programa Qué es un lenguaje de programación? Generaciones de los lenguajes de programación Traductores de lenguajes Compilador Intérprete Objetivos de la programación Exactitud Claridad Eficiencia Programación estructurada, modular y descendente Programación modular Diseño descendente ( TOP-DOWN ) Programación estructurada Programación estructurada Estructuras básicas de control lógico Ventajas de la programación estructurada Herramientas de programación Pseudocódigo Diagramas de flujo Tipos de estructuras Ciclo de programación Definición del problema Análisis del problema Selección de la mejor alternativa Diagramación Prueba de escritorio Codificación Trascripción Traducción Pruebas de ordenador Documentación externa Programación Orientada a Objetos

4 Programación 10. Introducción al Lenguaje C Un poco de historia Características Desventajas Aplicaciones Tipos

5 Conceptos de programación 1. Conceptos básicos 1.1. Programación La programación es una actividad mental compleja que se divide en varias etapas y cuya finalidad es comprender con claridad el problema que va a resolverse o simularse en el ordenador, y entender con detalle cuál será el procedimiento mediante el cual el ordenador obtendrá la solución esperada. El proceso de resolución de un problema con un ordenador conduce a la escritura de un programa y a su ejecución en la misma. Aunque el proceso de diseñar programas es esencialmente un proceso creativo, se pueden considerar una serie de fases o pasos comunes, que generalmente deben seguir todos los programadores: Las dos primeras fases conducen a un diseño detallado escrito en forma de algoritmo. Durante la tercera etapa (codificación) se implementa el algoritmo en un código escrito en un lenguaje de programación, reflejando las ideas desarrolladas en las fases del análisis y diseño. La fase de compilación y ejecución traduce y ejecuta el programa. En las fases de verificación y depuración el programador busca errores de las etapas anteriores y los elimina. Mientras mas tiempo se gaste en la fase de análisis y diseño menos se gastará en la depuración del programa. Por ultimo, se debe realizar la documentación correspondiente Algoritmo La palabra algoritmo se deriva de la traducción al latín de la palabra árabe ALkhOwarÍzmi, nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX. Un algoritmo es un método para resolver un problema mediante una serie de pasos precisos definidos y finitos. Sus características básicas son: Preciso Se debe indicar el orden de realización en cada paso Definido Si se sigue dos veces, obtiene el mismo resultado cada vez Finito Tiene fin, es decir, un número determinado de pasos Ejemplos de algoritmos son: instrucciones para montar en una bicicleta, hacer una receta de cocina, obtener el máximo común divisor de dos números, etc. Los algoritmos se pueden expresar por fórmulas, diagramas de flujo, o N-S y pseudocódigos. Esta última representación es la más utilizada en lenguajes estructurados como pascal, c++ etc. 3

6 Programación 1.3. Programa No es más que un conjunto de instrucciones que deben ser ejecutadas por el ordenador para resolver un problema. Todo programa debe cumplir las siguientes pautas: Tiene una única entrada y salida Toda sentencia (instrucción) del algoritmo es accesible, es decir, existe al menos un camino que va desde el inicio al fin del algoritmo, se puede seguir y pasa a través de dicha sentencia. No tiene ciclos o bucles infinitos Los programas pueden ser de dos tipos: PROGRAMA FUENTE: Es el programa escrito en alguno de los lenguajes y que no ha sido traducido al lenguaje de la maquina, es decir, el programa que no está en código máquina y que por lo tanto no puede ser ejecutable. PROGRAMA OBJETO: Aquel programa que se encuentra en lenguaje máquina y que ya es ejecutable por esta. 2. Qué es un lenguaje de programación? Los lenguajes de programación cierran el abismo entre los ordenadores, que sólo trabajan con números binarios, y los humanos, que preferimos utilizar palabras y otros sistemas de numeración. Mediante los programas se indica al ordenador qué tarea debe realizar y como efectuarla, pero para ello es preciso introducir estas ordenes en un lenguaje que el sistema pueda entender. En principio, el ordenador sólo entiende las instrucciones en código máquina, es decir, el específico de la computadora. Sin embargo, a partir de éstos se elaboran los llamados lenguajes de alto y bajo nivel. Un lenguaje de programación no es más que un conjunto de reglas y estándares para escribir un programa y permitir así la comunicación usuario / máquina. Se clasifican en tres grandes categorías: máquina, bajo nivel (ensamblador) y alto nivel Generaciones de los lenguajes de programación. Lenguaje máquina También conocido como lenguaje de primera generación es el lenguaje original del ordenador ya que un programa debe estar escrito en el lenguaje de la máquina para poder ser ejecutado. Este es generado por software y no por el programador. El programador escribe en un lenguaje de programación, el cual es traducido al lenguaje de máquina mediante intérpretes y compiladores. Fue utilizado en las primeras computadoras y trabaja sin símbolos y hace referencia a las direcciones reales de la memoria y a los códigos binarios de las instrucciones, interactúa con el hardware y juntos constituyen el nivel más bajo de programación. Actualmente es utilizado muy raramente para el desarrollo de programas de aplicación ya que todas las instrucciones y datos se especifican en ceros y unos (binario) por lo que sus instrucciones son directamente entendibles por el ordenador y no necesitan traducción posterior para que la UCP pueda comprender y ejecutar el programa. Como ya se ha indicado, las instrucciones en lenguaje máquina se expresan en términos de la unidad de memoria mas pequeña, el bit 4

7 Conceptos de programación (digito binario 0 o bien 1), en esencia una secuencia de bits que especifican la operación y las celdas de memoria implicadas en una operación Estas instrucciones serán fáciles de leer por la computadora y difíciles por un programador, y viceversa. Esta razón hace difícil escribir programas en código o lenguaje máquina y requiere buscar otro lenguaje para comunicarse con el ordenador, pero que sea más fácil de escribir y leer por el programador. Para evitar la tediosa tarea de escribir programas en lenguaje máquina se ha diseñado otros lenguajes de programación que facilitan la escritura y posterior ejecución de los programas. Estos programas son los de bajo y alto nivel. Lenguajes de bajo nivel Utilizan códigos muy cercanos a los de la máquina, lo que hace posible la elaboración de programas muy potentes y rápidos, pero son de difícil aprendizaje. LENGUAJE ENSAMBLADOR. Es un lenguaje de programación de bajo nivel, en que las instrucciones y las direcciones de memoria están representadas por símbolos. Permite la utilización de nombres simbólicos en lugar de ceros y unos. De esta manera se podrá utilizar la palabra "suma" para indicarle al ordenador que se quiere sumar dos números. Este lenguaje es utilizado raramente para el desarrollo de software de aplicación y con frecuencia es llamado lenguaje de segunda generación. Lenguajes de alto nivel También se les conoce como lenguaje de tercera generación, son de uso mucho más fácil, ya que en ellos un solo comando o instrucción puede equivaler a millares es código máquina. Es proceso es muy sencillo: El programador teclea instrucciones en un editor, que es un programa parecido a un simple procesador de palabras, estas instrucciones son almacenadas en archivos denominados programas fuentes (código fuente). Si los programadores necesitan hacer cambios al programa posteriormente vuelven a correr el editor y cargan el programa fuente para modificarlo. El proceso de conversión de programas fuente a programas objeto se realiza mediante un programa denominado compilador. El compilador toma un programa fuente y lo traduce a programa objeto y almacena este último en otro archivo. Este tipo de lenguajes, generalmente se utiliza para el desarrollo de programas o software de aplicación. Su principal característica es que una instrucción codificada en lenguaje de alto nivel equivale a varias instrucciones en lenguaje maquinal o ensamblador. Además, las personas pueden comprender mejor las instrucciones, y esto hace que se reduzcan el tiempo y el costo para realizar programas. Ejemplos de estos lenguajes son Pascal, Logo, Basic, Cobol, Fortran, C++. Lenguaje de cuarta generación (4GL) Es el lenguaje de muy alto nivel cuya característica principal es permitir a los usuarios con poco conocimiento sobre computación y lenguajes de programación, desarrollar sus propios programas de aplicación sin la participación operativa del personal del departamento de informática. Este tipo de programas o sistemas se conoce como cómputo de usuario final. De manera común son lenguajes que permiten la interacción directa del usuario en funciones de consulta y actualización de información. 5

8 Programación 3. Traductores de lenguajes Unos programas especiales llamados traductores (compiladores e intérpretes) convierten las instrucciones escritas en lenguajes de programación en instrucciones escritas en lenguaje maquina (0 y 1 bits) que esta pueda entender 3.1. Compilador Un compilador es un programa que traduce el programa fuente (conjunto de instrucciones de un lenguaje de alto nivel, por ejemplo BASIC o Pascal) a programa objeto (instrucciones en lenguaje máquina que la computadora puede interpretar y ejecutar). Se requiere un compilador para cada lenguaje de programación ya que normalmente el compilador analiza el léxico y verifica la sintaxis del programa, y en una segunda fase hace la traducción. Un compilador no ejecuta el programa. Una vez compilado el programa, el resultado en forma de programa objeto será directamente ejecutable. Presentan la ventaja considerable frente a los intérpretes de la velocidad de ejecución, por lo que su uso será mejor en aquellos programas probados en los que no se esperan cambios y que deban ejecutarse muchas veces. En caso de que se opte por un interpretador se debe considerar que el intérprete resida siempre en memoria Intérprete Traductor de lenguajes de programación de alto nivel, los intérpretes ejecutan un programa línea por línea. El programa siempre permanece en su forma original (programa fuente) y el interprete proporciona la traducción al momento de ejecutar cada una de las instrucciones. Un intérprete es un programa que procesa los programas escritos en un lenguaje de alto nivel, sin embargo, está diseñado de modo que no existe independencia entre la etapa de traducción y la etapa de ejecución. Un intérprete traduce cada instrucción o sentencia del programa escrito a un lenguaje máquina e inmediatamente se ejecuta. Encuentran su mayor ventaja en la interacción con el usuario, al facilitar el desarrollo y puesta a punto de programas, ya que los errores son fáciles de detectar y sobre todo de corregir. Es un programa que también realiza el proceso de traducción. El interpretador, a diferencia del compilador, verifica, traduce y ejecuta instrucción por instrucción sin generar un programa en lenguaje maquinal en forma ejecutable. 4. Objetivos de la programación En la preparación de un programa, el programador puede tener que escoger entre soluciones alternativas en muchos puntos. Cada elección debe hacerse para satisfacer los objetivos y restricciones de la tarea de programación particular. Aquí asumiremos como apropiados para toda tarea de programación los siguientes objetivos: Exactitud, claridad y eficiencia 4.1. Exactitud Un objetivo obvio en la escritura de cualquier programa de ordenador es que tiene que satisfacer su especificación exactamente. A menudo, sin embargo, a causa de la complejidad 6

9 Conceptos de programación de la labor del programa, y de un entendimiento o cuidado inadecuados de parte del programador, un programa falla en satisfacer alguna parte de su especificación. Un programador tiene que ser en todo tiempo cuidadoso de la exactitud o pertinencia del programa para su propósito especificado. Un factor clave en el logro de exactitud es la simplicidad. Escogiendo el algoritmo o técnica más simple disponible, es más probable que un programador vea si satisface o no los requerimientos de la especificación del programa, y es menos probable que la describa incorrectamente en su programa. La innecesaria complejidad no cumple propósito alguno en la programación de ordenadores. Algunos programas son, por supuesto, inherentemente complejos. Para tales programas, el programador debe adoptar un tratamiento sistemático que controle y limite la complejidad de la que tiene que ocuparse en cada etapa Claridad Un programa es necesariamente tan complejo como el algoritmo que describe. Sin embargo, es importante que la forma en que el algoritmo esté descrito, por el texto del programa, no sea más complicada de lo que es necesario. La claridad del programa es una ayuda importante para el programador mismo en el diseño y limpieza del programa; y para otros que puedan tener que leer y alterar el programa en alguna etapa posterior. La claridad del programa es lograda casi en la misma forma que para cualquier texto escrito, tal como un ensayo o un libro en los cuales se requiere: a).- Una separación lógica del texto en partes comprensibles (capítulos, secciones, etc.) que reflejen la distinción entre los temas que describen, y su presentación en una secuencia lógica que refleje las relaciones entre ellas; b).- Una selección cuidadosa de las características del lenguaje, usadas en cada parte para expresar su sentido propuesto tan precisamente como sea posible; c).- Otra selección cuidadosa de las palabras usadas para denotar los objetos y conceptos involucrados; d).- La inclusión de comentarios y preámbulos para clarificar el texto principal cuando sea necesario; Un programador podría ser tan diligente en el uso de éstas técnicas para lograr claridad como el autor de cualquier texto. En muchos casos, la utilidad de un programa es determinada tanto por la claridad de su texto como por las cualidades del algoritmo que describe Eficiencia El costo de ejecutar un programa de ordenador, es medido normalmente en términos de: a).- El tiempo tomado por el ordenador para llevar a cabo la secuencia de operaciones involucradas. b).- La cantidad de memoria del ordenador usada en hacerlo. En muchos ambientes (de máquina), el programa competirá con otros programas por el uso de esos recursos del computador, y es, por tanto, lógico minimizar los requerimientos del programa para cada uno. El tiempo tomado para ejecutar el programa, es directamente proporcional al número de operaciones que el procesador tiene que realizar al hacerlo. El programador debe, por tanto, escoger un algoritmo que minimice las operaciones implicadas, y tener cuidado de evitar cualquier operación redundante al expresar el algoritmo como un programa de ordenador. 7

10 Programación La memoria usada por el programa durante su ejecución, es determinada por la cantidad de datos que tienen que ser guardados, y por el número de instrucciones del procesador requeridas para definir el programa, ya que éstas también tienen que ser guardadas en la memoria. Para minimizar el almacenamiento usado por su programa, el programador debe, por tanto, considerar los datos manipulados y el número de operaciones especificadas por el programa. Para algunos programas, o partes de programas, el uso eficiente del tiempo o del almacenamiento puede ser crítico; para otros puede serlo menos. El programador debe estar enterado de cualquiera de tales requerimientos de eficiencia cuando escriba su programa. 5. Programación estructurada, modular y descendente Los términos programación modular, programación descendente y programación estructurada se introdujeron en la segunda mitad de la década de los 60 y a menudo sus términos se utilizan como sinónimos aunque no significan lo mismo Programación modular La programación modular es uno de los métodos de diseño más flexible y potentes para mejorar la productividad de un programa. En programación modular el programa se divide en módulos (partes independientes), cada una de las cuales ejecuta una única actividad o tarea y se codifican independientemente de otros módulo. Cada uno de estos módulos se analiza, codifica y se pone a punto por separado. Cada programa contiene un módulo denominado programa principal que controla todo lo que sucede; se transfiere el control a submódulos (posteriormente se denominarán subprogramas), de modo que ello puedan ejecutar sus funciones; sin embargo, cada submódulo devuelve el control al modulo principal cuando se haya completado su tarea. Si la tarea asignada a cada submódulo es demasiado compleja, éste deberá romperse en otros módulos más pequeños. El proceso sucesivo de subdivisión de módulos continua hasta que cada módulo tenga solamente una tarea especifica que ejecutar. Esta tarea puede ser entrada, salida, manipulación de datos, control de otros módulos o alguna combinación de éstos. Un módulo puede transferir temporalmente (bifurcar) el control a otro modulo; sin embargo cada modulo debe eventualmente devolver el control al módulo del cual se recibe originalmente el control. Los módulos son independientes en el sentido en el que ningún módulo puede tener acceso directo a cualquier otro módulo excepto el módulo al que llama y sus propios submódulos. Sin embargo, los resultados producidos por un módulo pueden ser utilizados por cualquier otro módulo cuando se transfiera a ellos el control. Dado que los módulos son independientes, diferentes programadores pueden trabajar simultáneamente en diferentes partes del mismo programa. Esto reducirá el tiempo del diseño del algoritmo y posterior codificación del programa. Además, un módulo se puede modificar radicalmente sin afectar a otros módulos, incluso sin alterar su función principal. La descomposición de un programa en módulos independientes más simples se conoce también como el método de "divide y vencerás" (divide and conquer). Se diseña cada módulo con independencia de los demás, y siguiendo un método ascendente o descendente se llegará hasta la descomposición final del problema en módulos en forma jerárquica. 8

11 Conceptos de programación 5.2. Diseño descendente ( TOP-DOWN ) El diseño descendente (top-down) es el proceso mediante el cual un problema se descompone en una serie de niveles o pasos sucesivos de refinamiento (stepwise). La metodología descendente consiste en efectuar una relación entre las sucesivas etapas de estructuración de modo que se relacionasen una con otras mediante entradas y salidas de información. Es decir, se descompone el problema en etapas o estructuras jerárquicas, de forma que se puede considerar cada estructura desde dos puntos de vista: qué hacer? y cémo lo hace? 5.3. Programación estructurada Significa escribir un programa de acuerdo a las siguientes reglas: El programa tiene un diseño modular. Los módulos son diseñados de modo descendente. Cada módulo se codifica utilizando las tres estructuras de control básicas: secuencia, selección y repetición. El término programación estructurada se refiere a un conjunto de técnicas que han ido evolucionando desde los primeros trabajos de Edsgar Dijkstra. Estas técnicas aumentan considerablemente la productividad del programa reduciendo un elevado grado de tiempo requerido para escribir, verificar, depurar y mantener los programas. La programación estructurada utiliza un número limitado de estructuras de control que minimizan la complejidad de los programas y por consiguiente reducen los errores; hace los programas más fáciles de escribir, verificar, leer y mantener. Los programas deben estar dotados de una estructura. 6. Programación estructurada El creciente empleo de los ordenadores ha conducido a buscar un abaratamiento del desarrollo de software, paralelo a la reducción del costo del hardware obtenido gracias a los avances tecnológicos. Los altos costos del mantenimiento de las aplicaciones en producción normal también han urgido la necesidad de mejorar la productividad del personal de programación. La programación estructurada (en adelante simplemente PE), es un estilo de programación con el cual el programador elabora programas, cuya estructura es la más clara posible, mediante el uso de tres estructuras básicas de control lógico: SECUENCIA, SELECCIÓN e ITERACIÓN. Un programa estructurado se compone de funciones, segmentos, módulos y/o subrutinas, cada una con una sola entrada y una sola salida. Cada uno de estos módulos (aún en el mismo programa completo), se denomina programa apropiado cuando, además de estar compuesto solamente por las tres estructuras básicas, tiene sólo una entrada y una salida y en ejecución no tiene partes por las cuales nunca pasa ni tiene ciclos infinitos. La PE tiene un teorema estructural o teorema fundamental, el cual afirma que cualquier programa, no importa el tipo de trabajo que ejecute, puede ser elaborado utilizando únicamente las tres estructuras básicas (secuencia, selección, iteración). 9

12 Programación 6.1. Estructuras básicas de control lógico Secuencia Indica que las instrucciones de un programa se ejecutan una después de la otra, en el mismo orden en el cual aparecen en el programa. Se representa gráficamente como una caja después de otra, ambas con una sola entrada y una única salida. Las cajas A y B pueden ser definidas para ejecutar desde una simple instrucción hasta un módulo o programa completo, siempre y cuando que estos también sean programas apropiados. Selección También conocida como la estructura SI-CIERTO-FALSO, plantea la selección entre dos alternativas con base en el resultado de la evaluación de una condición o predicado; equivale a la instrucción IF de todos los lenguajes de programación. En el diagrama de flujo, C es una condición que se evalúa; A es la acción que se ejecuta cuando la evaluación de este predicado resulta verdadera y B es la acción ejecutada cuando indica falso. La estructura también tiene una sola entrada y una sola salida; y las funciones A y B también pueden ser cualquier estructura básica o conjunto de estructuras. Iteración También llamada la estructura HACER-MIENTRAS-QUE, corresponde a la ejecución repetida de una instrucción mientras que se cumple una determinada condición Aquí el bloque A se ejecuta repetidamente mientras que la condición C se cumpla o sea cierta. También tiene una sola entrada y una sola salida; igualmente A puede ser cualquier estructura básica o conjunto de estructuras. 10

13 Conceptos de programación 6.2. Ventajas de la programación estructurada Con la PE, elaborar programas de computador sigue siendo una labor que demanda esfuerzo, creatividad, habilidad y cuidado. Sin embargo, con este nuevo estilo podemos obtener las siguientes ventajas: I. Los programas son más fáciles de entender. Un programa estructurado puede ser leído en secuencia, de arriba hacia abajo, sin necesidad de estar saltando de un sitio a otro en la lógica, lo cual es típico de otros estilos de programación. La estructura del programa es más clara puesto que las instrucciones están más ligadas o relacionadas entre si, por lo que es más fácil comprender que hace cada función. II. Reducción del esfuerzo en las pruebas. El programa se puede tener listo para producción normal en un tiempo menor del tradicional; por otro lado, el seguimiento de las fallas o depuración (debugging) se facilita debido a la lógica más visible, de tal forma que los errores se pueden detectar y corregir más fácilmente. III. Reducción de los costos de mantenimiento. IV. Programas más sencillos y más rápidos. V. Aumento en la productividad del programador. VI. Se facilita la utilización de las otras técnicas para el mejoramiento de la productividad en programación. VII. Los programas quedan mejor documentados internamente. 11

14 Programación 7. Herramientas de programación Las dos herramientas mas utilizadas comúnmente para diseñar algoritrnos son: diagramas de flujo y pseudocódigos Pseudocódigo El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o al español, que facilitan tanto como la escritura como la lectura del programa. En esencia, el pseudocódigo se puede definir como un lenguaje de especificaciones de algoritrnos. Aunque no existen reglas para escritura del pseudocódigo en español, se ha recogido una notación estándar que ya es muy empleada en los libros de programación en español. Las palabras reservadas básicas se representarán en letras negritas minúsculas. Estas palabras son traducción libre de palabras reservadas de lenguajes como BASIC, pascal, etc Diagramas de flujo Un diagrama de flujo (flowchart) es una representación grafica de un algoritmo. Los símbolos utilizados han sido normalizados por el Instituto Norteamericano de Normalización (ANSI), y los más frecuentemente empleados se muestran en la figura Tipos de estructuras Un programa propio se puede escribir utilizando solamente tres tipos de sentencias: SECUENCIALES, SELECTIVAS y REPETITIVAS. 12

15 Conceptos de programación Estructura secuencial Diagrama de flujo Diagrama N-S Pseudocódigo Estructuras selectivas Diagrama de flujo Diagrama N-S Pseudocódigo Estructuras repetitivas Mientras Diagrama de flujo Diagrama N-S Pseudocódigo 13

16 Programación Para Diagrama de flujo Diagrama N-S Pseudocódigo Hasta Diagrama de flujo Diagrama N-S Pseudocódigo 8. Ciclo de programación Las siguientes son las etapas que se deben cumplir para resolver con éxito un problema de programación: 1. Definición del problema. 2. Análisis del problema. 3. Selección de la mejor alternativa. 4. Diagramación. 5. Prueba de escritorio. 6. Codificación. 7. Trascripción. 8. Traducción. 9. Pruebas de ordenador. 10. Documentación externa 14

17 Conceptos de programación 8.1. Definición del problema Está dada por el enunciado del problema, el cual debe ser claro y completo. Es importante que conozcamos exactamente que se desea del ordenador; mientras qué esto no se comprenda, no tiene caso pasar a la siguiente etapa Análisis del problema Entendido el problema (que se desea obtener del ordenador), para resolverlo es preciso analizar: a. Los datos o resultados que se esperan. b. Los datos de entrada que nos suministran. c. El proceso al que se requiere someter esos datos a fin de obtener los resultados esperados. Áreas de trabajo, fórmulas y otros recursos necesarios. Una recomendación muy práctica es el que nos pongamos en el lugar del ordenador, y analizar que es necesario que me ordenen y en que secuencia, para poder producir los resultados esperados. También da buenos resultados hacer similitudes con la labor de un empleado que hace el mismo trabajo que deseamos programarle al ordenador Selección de la mejor alternativa Analizado el problema, posiblemente tengamos varias formas de resolverlo; lo importante es determinar cual es la mejor alternativa: la que produce los resultados esperados en el menor tiempo y al menor costo. Claro que aquí también es muy válido el principio de que las cosas siempre se podrán hacer de una mejor forma Diagramación Una vez que sabemos cómo resolver el problema, pasamos a dibujar gráficamente la lógica de la alternativa seleccionada. Eso es precisamente un Diagrama de Flujo: la representación gráfica de una secuencia lógica de pasos a cumplir por el ordenador para producir un resultado esperado. La experiencia nos ha demostrado que resulta muy útil trasladar esos pasos lógicos planteados en el diagrama a frases que indiquen lo mismo; es decir, hacer una codificación del programa pero utilizando instrucciones por escrito. Como si le estuviéramos hablando al computador. Esto es lo que denominaremos Algoritmo o Pseudocódigo. Cuando logremos habilidad para desarrollar programas, es posible que no elaboremos el diagrama de flujo; en su lugar podremos hacer directamente el pseudocódigo del programa Prueba de escritorio Para cercioramos de que el diagrama (y/o el pseudocódigo) esta bien, y, para garantizar que el programa que codifiquemos luego también funcione correctamente, es conveniente someterlo a una Prueba de Escritorio. Esta prueba consiste en que damos diferentes datos de 15

18 Programación entrada al programa y seguimos la secuencia indicada en el diagrama, hasta obtener los resultados. El análisis de estos nos indicará si el diagrama esta correcto o si hay necesidad de hacer ajustes (volver al paso 4). Se recomienda dar diferentes datos de entrada y considerar todos los posibles casos, incluyendo los de excepción o no esperados, para aseguramos de que el programa no producirá errores en ejecución cuando se presenten estos casos Codificación Una vez que hayamos verificado el diagrama mediante las pruebas de escritorio, codificamos el programa en el lenguaje de ordenador seleccionado. Esto es, colocamos cada paso del diagrama en una instrucción o sentencia, utilizando un lenguaje que el ordenador reconoce. Todos los lenguajes de programación proveen facilidades para incluir líneas de comentarios en los programas. Estos comentarios aclaran lo que se ordena al ordenador y facilitan entender el programa. Puesto que estos comentarios no son tenidos en cuenta como instrucciones, y aparecen en los listados del programa, resulta muy conveniente agregar abundantes comentarios a todo programa que codifiquemos. Esto es lo que se denomina Documentación Interna Trascripción El programa codificado es necesario que lo llevemos a un medio que sea aceptado como entrada por el ordenador: lo grabamos en el un disco duro u otro medio. Este programa es el que se conoce como Programa Fuente (Source) Traducción Utilizamos ahora un programa de ordenador llamado Compilador o Traductor, el cual analiza todo el programa fuente y detecta errores de sintaxis ocasionados por fallas en la codificación o en la trascripción. Las fallas de lógica que pueda tener nuestro programa fuente no son detectadas por el compilador. Cuando no hay errores graves en la compilación, el compilador traduce cada instrucción del programa fuente a instrucciones propias de la máquina (Lenguaje de Maquina), creando el Programa Objeto. Algunos ordenadores utilizan Interpretadores, (Generalmente para el Lenguaje Basic), en reemplazo de programas compiladores. La diferencia consiste en que el interpretador recibe, desde una terminal, sólo una instrucción a la vez, la analiza y, si esta bien, la convierte al formato propio de la maquina. Si la instrucción tiene algún error, el interpretador llama la atención de la persona para que corrija dicha instrucción. Como resultado de la ejecución del compilador, podemos obtener varios listados: Listado del programa fuente Listado de los errores detectados Listado de campos utilizados, etc. Los errores los debemos corregir sobre el mismo programa fuente, volviendo ha grabar el fichero fuente. Este paso de la compilación lo repetimos hasta eliminar todos los errores y obtener el programa ejecutable. 16

19 Conceptos de programación 8.9. Pruebas de ordenador Cuando tenemos el programa ejecutable (en lenguaje de maquina), ordenamos al computador que lo ejecute, para lo cual suministramos datos de prueba, como lo hicimos en la prueba de escritorio (paso 5). Los resultados obtenidos los analizamos, luego de lo cual puede ocurrir cualquiera de estas situaciones: a) La lógica del programa esta bien, pero hay errores sencillos, los cuales los corregimos modificando algunas instrucciones o incluyendo unas nuevas; el proceso debemos repetido desde el paso 6. b) Hay errores ocasionados por fallas en la lógica, lo que nos obliga a regresar a los pasos 4 y 5 para revisión y modificación del diagrama. c) Hay errores muy graves y lo más aconsejable es que regresemos al paso 2 para analizar nuevamente el problema, y repetir todo el proceso. d) No hay errores y los resultados son los esperados. En este caso, el programa lo podemos guardar permanentemente en una librería o biblioteca del ordenador, para sacado de allí cuando necesitemos ejecutarlo nuevamente Documentación externa Cuando el programa ya se tiene listo para ejecutar, es conveniente que hagamos su documentación externa siguiendo las normas de la instalación. Una buena documentación incluye siempre: a. Enunciado del problema. b. Diagrama de pasada. c. Narrativo con la descripción de la solución. d. Relación de las variables o campos utilizados en el programa, cada uno con su respectiva función. e. Diagrama del programa. f. Listado de la última compilación. g. Resultados de la ejecución del programa. 9. Programación Orientada a Objetos La programación orientada a objetos no es un concepto nuevo, sus inicios y técnicas de programación se iniciaron a principios de los 70. Se puede definir programación orientada a objetos (OOPS) como una técnica de programación que utiliza objetos como bloque esencial de construcción. La OOPS, es un tipo de programación más cercana al razonamiento humano. La OOPS surge como una solución a la programación de grandes programas, y para solventar el mantenimiento de dichas aplicaciones, ya que en la programación estructura el más mínimo cambio supone la modificación de muchas funciones relacionadas, en cambio con la OOPS solo es cuestión de añadir o modificar métodos de una clase o mejor, crear una nueva clase a partir de otra (Herencia). Concepto de Objeto: Desde un punto de vista general un Objeto es una estructura de datos de mayor o menor complejidad con las funciones que procesan estos datos. Dicho de otra forma, sería Datos más un Código que procesa estos datos. A los datos se les denomina miembros dato y a las funciones miembro o miembro funciones. Los datos están ocultos y sólo se puede acceder a ellos mediante las funciones miembro. Clases: Las Clases son como plantillas o modelos que describen como se construyen ciertos tipos de Objeto. Cada vez que se construye un Objeto de una Clase, se crea una instancia de esa Clase ("instance"). Una Clase es una colección de Objetos similares y un Objeto es una 17

20 Programación instancia de una Clase. Se puede definir una Clase como un modelo que se utiliza para describir uno o más Objetos del mismo tipo. Herencia: Una característica muy importante de los Objetos y las Clases es la Herencia, una propiedad que permite construir nuevos Objetos (Clases) a partir de unos ya existentes. Esto permite crear "Sub-Clases" denominadas Clases Derivadas que comparten las propiedades de la Clase de la cual derivan (Clase base). Las Clases derivadas heredan código y datos de la clase base, asimismo incorporan su propio código y datos especiales. Se puede decir que la herencia permite definir nuevas Clases a partir de las Clases ya existentes. Polimorfismo: En un sentido literal, Polimorfismo significa la cualidad de tener más de una forma. En el contexto de POO, el Polimorfismo se refiere al hecho de que una simple operación puede tener diferente comportamiento en diferentes objetos. En otras palabras, diferentes objetos reaccionan al mismo mensaje de modo diferente. Los primeros lenguajes de POO fueron interpretados, de forma que el Polimorfismo se contemplaba en tiempo de ejecución. Por ejemplo, en C++, al ser un lenguaje compilado, el Polimorfismo se admite tanto en tiempo de ejecución como en tiempo de compilación 10. Introducción al Lenguaje C Un poco de historia El lenguaje C fue diseñado en los años sesenta por Dennis Ritchie, de los Laboratorios Bell con el propósito de ser el lenguaje del sistema operativo UNÍX. La base del C proviene del BCPL, escrito por Martin Richards, y del B escrito por Ken Thompson en 1970 para el primer sistema UNIX en un DEC PDP- 7. Estos son lenguajes sin tipos, al contrario que el C que proporciona varios tipos de datos. En 1978 Kemighan y Ritchie publican su descripción en el libro "The C Programming Language", versión que es llamada hoy en día 'K&R C'. Es un libro que explica y justifica totalmente el desarrollo de aplicaciones en C, aunque en él se utilizaban construcciones en la definición de funciones, que podían provocar confusión y errores de programación que no eran detectados por el compilador. A mediados de los ochenta ya había en el mercado numerosos compiladores C, y muchas aplicaciones habían sido rescritas a él para aprovechar sus ventajas. Desde su nacimiento se fue implantando como el lenguaje de programación de sistemas favorito para muchos programadores, sobre todo por ser un lenguaje que conjugaba la abstracción de los lenguajes de alto nivel con la eficiencia del lenguaje máquina. Los programadores de sistemas que trabajaban sobre MS-DOS y Macintosh también utilizaban C, con lo cual la práctica totalidad de aplicaciones de sistema para microordenadores y para sistemas UNIX está escrito en este lenguaje. Durante este periodo de tiempo numerosos fabricantes introducen mejoras en el lenguaje, las cuales son recogidas por un comité de estandarización ANSI y establecen las especificaciones de lo que se conoce hoy en día como 'ANSI C'. El estándar está basado en el manual de referencia original de 1972 y se desarrolla con el mismo espíritu de sus creadores originales. La primera versión de estándar se publicó en 1988 y actualmente todos los compiladores utilizan la nueva definición. Una aportación muy importante de ANSI consiste en la definición de un conjunto de librerías que acompañan al compilador y de las funciones contenidas en ellas. Muchas de las operaciones comunes con el sistema operativo se realizan a través de estas funciones. Una colección de ficheros de encabezamiento, headers, en los que se definen los tipos de datos y funciones incluidas en 18

21 Conceptos de programación cada librería. Los programas que utilizan estas bibliotecas para interactuar con el sistema operativo obtendrán un comportamiento equivalente en otro sistema. A mediados de los ochenta se crea el C++, extensión de C orientada a objetos. El C++ se convierte en estándar ISO en En el momento actual, el lenguaje C no va a modificarse más. Será el C++ el que incorporará nuevos cambios Características C es un lenguaje de programación de propósito general que ofrece economía sintáctica, control de flujo y estructuras sencillas y un buen conjunto de operadores. No es un lenguaje de muy alto nivel y es más bien un lenguaje pequeño, sencillo y que no está especializado en ningún tipo de aplicación. Esto lo hace un lenguaje potente, con un campo de aplicación ilimitado y sobre todo, se aprende rápidamente ya que en poco tiempo, un programador puede utilizar la totalidad del lenguaje. Nivel medio El C se encuentra en la jerarquía de lenguajes en un nivel intermedio entre Pascal y el Ensamblador. Pretende ser un lenguaje de alto nivel con la versatilidad de los de bajo nivel. El lenguaje C se conoce como un lenguaje compilado. Los compilados convierten el código fuente en un fichero objeto y éste en un fichero ejecutable. Los interpretados son aquellos que necesitan del código fuente para funcionar. Portable Este lenguaje ha sido estrechamente ligado al sistema operativo UNIX, puesto que fueron desarrollados conjuntamente. Sin embargo, este lenguaje no está ligado a ningún sistema operativo ni a ninguna máquina concreta. Se le suele llamar lenguaje de programación de sistemas debido a su utilidad para escribir compiladores y sistemas operativos, aunque de igual forma se puede desarrollar cualquier tipo de aplicación. Una de las características más apreciadas de C es su gran portabilidad, gracias a que deja en manos de librerías las funciones dependientes de la máquina, por ejemplo, la entrada/salida no se considera parte del lenguaje en sí, sino que se suministra a través de funciones de librería. La misma política se sigue con cualquier otro tipo complejo de instrucciones. Eficiente C trabaja con tipos de datos que son directamente tratables por el hardware de la mayoría de los ordenadores actuales, como son los caracteres, números y direcciones. Estos tipos de datos pueden ser manipulados por las operaciones aritméticas que proporcionan los ordenadores. No proporciona mecanismos para tratar tipos de datos que no sean los básicos, debiendo ser el programador el que los desarrolle. Esto permite que el código generado sea muy eficiente y de ahí el éxito que ha tenido como lenguaje de desarrollo de sistemas. No proporciona otros mecanismos de almacenamiento de datos que no sea el estático y no proporciona mecanismos de entrada ni salida. Ello permite que el lenguaje sea reducido y los compiladores de fácil implementación en distintos sistemas. Por contra, estas carencias se compensan mediante la inclusión de funciones de librería para realizar todas estas tareas, que normalmente dependen del sistema operativo. El compilador debe ser lo más pequeño y eficiente posible. Pocas palabras reservadas, esto es, un conjunto reducido de sentencias. No existe anidamiento de procedimientos. Con ello se llegó a un compilador con un poderoso juego de instrucciones, que permite aumentar la productividad/día de los programadores ya que para escribir un programa se debe escribir 19

22 Programación poco texto. Para lograr esto se reduce el número de palabras claves. A pesar de ello el C es un lenguaje rápido de aprender, que deriva en compiladores sencillos de diseñar, robustos, y que generan objetos pequeños y eficientes Desventajas Dentro de las principales críticas que se le achacan podemos destacar: Lo poco estricto que es el lenguaje con la comprobación de los tipos de datos, dejando esta tarea muchas veces en manos del programador. El no verificar automáticamente los límites de los vectores. La repetición que hace de símbolos en operadores diferentes (=,*,-). (Sobrecarga de operadores). Es muy poco modular: al no poder anidar funciones, con lo que se dificulta la estructuración y la abstracción de datos. La incertidumbre existente en el orden de evaluación de las listas de expresiones y parámetros. La facilidad con que los programas pueden derivar hacia ser crípticos. Es difícil leer código escrito por otras personas Aplicaciones Estas y otras características lo hacen adecuado para la programación en tareas tales como: programación de sistemas: sistemas operativos, intérpretes, editores, ensambladores, compiladores estructuras de datos y sistemas de bases de datos aplicaciones científicas software gráfico análisis numérico Tipos Algunos de las C existentes son: Quick C, C++, Turbo C, Turbo C ++, Borland C, Borland C++, Microsoft C... 20

2.1 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS

2.1 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS 2.1 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS El proceso de resolución de un problema con una computadora conduce a la escritura de un programa y su ejecución en la misma. Aunque el proceso de diseñar

Más detalles

2.2 METODOLOGÍA PARA EL DISEÑO DE SOFTWARE

2.2 METODOLOGÍA PARA EL DISEÑO DE SOFTWARE 2.2 METODOLOGÍA PARA EL DISEÑO DE SOFTWARE Programación Modular La programación modular es uno de los métodos de diseño más flexibles y potentes para mejorar la productividad de un programa. En programación

Más detalles

Programación de Ordenadores. Dept. Ciencias de la Computación e I.A. Universidad de Granada

Programación de Ordenadores. Dept. Ciencias de la Computación e I.A. Universidad de Granada TEMA Programación de Ordenadores Dept. Ciencias de la Computación e I.A. Universidad de Granada 1 Índice Resolución de Problemas con Ordenadores Algoritmo Metodología de la programación Lenguajes de programación

Más detalles

Introducción a la programación: Contenido. Introducción

Introducción a la programación: Contenido. Introducción Introducción a la programación: Contenido Introducción a la programación:... 1 Introducción... 1 1. Procesamiento automatizado de información... 1 2. Concepto de algoritmo.... 2 3. Lenguajes de programación....

Más detalles

Proceso de información en la computadora

Proceso de información en la computadora 1.1 Introducción La computadora no solamente es una maquina que puede realizar procesos para darnos resultados, sin que tengamos la noción exacta de las operaciones que realiza para llegar a esos resultados.

Más detalles

Programación de Ordenadores

Programación de Ordenadores Programación de Ordenadores Ingeniería Química David Pelta Depto de Ciencias de la Computación e I.A. Universidad de Granada Índice Resolución de Problemas con Ordenadores Algoritmo Metodología de la programación

Más detalles

Introducción a la Programación en C

Introducción a la Programación en C Christopher Expósito-Izquierdo cexposit@ull.edu.es Airam Expósito-Márquez aexposim@ull.edu.es Israel López-Plata ilopezpl@ull.edu.es Belén Melián-Batista mbmelian@ull.edu.es José Marcos Moreno-Vega jmmoreno@ull.edu.es

Más detalles

Tema 2 Introducción a la Programación en C.

Tema 2 Introducción a la Programación en C. Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes

Más detalles

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para

Más detalles

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

Más detalles

Acción que el procesador puede ejecutar sin necesidad de información suplementaria

Acción que el procesador puede ejecutar sin necesidad de información suplementaria TEMA 5: Algoritmos y programas Fundamentos de Informática (Ingeniería Técnica Industrial) Escuela Universitaria Politécnica Índice de contenidos 1. 2. 3. 4. Introducción. Conceptos básicos Representación

Más detalles

Conceptos Programa Programa objeto Pseudocódigo Algoritmos y Diagramas de flujo 1) Finitud 2) Definición 3) Entrada

Conceptos Programa Programa objeto Pseudocódigo Algoritmos y Diagramas de flujo 1) Finitud 2) Definición 3) Entrada Conceptos Programa Se le llama programa a la serie de instrucciones escritas en alguno de los lenguajes, por medio de los cuales se logra que la computadora realice todas las operaciones o decisiones señaladas

Más detalles

Capítulo 3 CICLO DE VIDA DE UN PROGRAMA. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

Capítulo 3 CICLO DE VIDA DE UN PROGRAMA. Presentación resumen del libro: EMPEZAR DE CERO A PROGRAMAR EN lenguaje C Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C" Autor: Carlos Javier Pes Rivas (correo@carlospes.com) Capítulo 3 CICLO DE VIDA DE UN PROGRAMA 1 OBJETIVOS Saber qué es la Ingeniería

Más detalles

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje.

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje. Modulo 1. Introducción a los lenguajes de programación La solución de problemas mediante en uso de un computador nos lleva a desarrollar programas o aplicaciones, la construcción de estos programas debe

Más detalles

Computación Avanzada. Ing. Daniel Capriles M.

Computación Avanzada. Ing. Daniel Capriles M. Computación Avanzada. Ing. Daniel Capriles M. Es un modelo que engloba a ciertos lenguajes que comparten elementos estructurales o metodológicos similares. Según Robert Floyd quien habló por primera vez

Más detalles

Técnicas de Programación

Técnicas de Programación Técnicas de Programación 2.1.- Introducción: unos conceptos previos y primeros conceptos de la API Introducción La resolución de un problema con medios informáticos implica generalmente la siguiente secuencia

Más detalles

Tema 3: Resolución de problemas con computadoras 2014

Tema 3: Resolución de problemas con computadoras 2014 Resolución de problemas La Informática puede definirse también como la ciencia que estudia el análisis y resolución de problemas utilizando computadoras. La computadora es una máquina digital con capacidad

Más detalles

INSTITUTO NACIONAL SUPERIOR DEL PROFESORADO TÉCNICO - TÉCNICO SUPERIOR EN INFORMÁTICA APLICADA - PROGRAMACIÓN I

INSTITUTO NACIONAL SUPERIOR DEL PROFESORADO TÉCNICO - TÉCNICO SUPERIOR EN INFORMÁTICA APLICADA - PROGRAMACIÓN I RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS La principal razón para que las personas aprendan lenguajes de programación es utilizar una computadora como una herramienta para la resolución de problemas. Cinco

Más detalles

Módulo 1. Introducción a los lenguajes de programación

Módulo 1. Introducción a los lenguajes de programación Módulo 1. Introducción a los lenguajes de programación Objetivo - Definir qué es un lenguaje de programación e identificar cómo es su forma de clasificación. Introducción a los lenguajes de programación

Más detalles

GLOSARIO DE TÉRMINOS DE PROGRAMACIÓN

GLOSARIO DE TÉRMINOS DE PROGRAMACIÓN GLOSARIO DE TÉRMINOS DE PROGRAMACIÓN ASCII (Código): Las computadoras solamente entienden números. El código ASCII es una representación numérica de un carácter como a o @, y muchos otros. Como otros códigos

Más detalles

TEMA 1. PROGRAMACIÓN DE UN COMPUTADOR

TEMA 1. PROGRAMACIÓN DE UN COMPUTADOR Tema 1. Programación de un computador TEMA 1. CIÓN DE UN COMPUTADOR 1. CONCEPTO DE 2. LENGUAJES DE CIÓN 2.1. LENGUAJE MÁQUINA 2.2. LENGUAJE ENSAMBLADOR 2.3. LENGUAJE DE ALTO NIVEL 3. ALGORITMOS. REPRESENTACIÓN

Más detalles

COLEGIO DE ESTUDIOS DE POSGRADO DE LA CIUDAD DE MÉXICO

COLEGIO DE ESTUDIOS DE POSGRADO DE LA CIUDAD DE MÉXICO COLEGIO DE ESTUDIOS DE POSGRADO DE LA CIUDAD DE MÉXICO ELABORO: ALEJANDRA FUERTES FRANCISCO TEMA: LENGUAJES DE PROGRAMACIÓN INTRODUCCIÓN Un lenguaje de programación es un conjunto de instrucciones que

Más detalles

Prof. María Alejandra Quintero. Informática Año

Prof. María Alejandra Quintero. Informática Año Prof. María Alejandra Quintero Informática Año 2014-2015 Es la acción de escribir programas de computación con el objetivo de resolver un determinado problema. Implica escribir instrucciones para indicarle

Más detalles

Introducción a la programación

Introducción a la programación Introducción a la programación Conceptos Básicos El objetivo fundamental de éste curso es enseñar a resolver problemas mediante una computadora. El programador de computadoras es antes que nada una persona

Más detalles

ALGORITMO. Podemos encontrar muchas definiciones de algoritmo en los textos de programación, todas ellas muy similares:

ALGORITMO. Podemos encontrar muchas definiciones de algoritmo en los textos de programación, todas ellas muy similares: 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

Más detalles

Evolución del software y su situación actual

Evolución del software y su situación actual Evolución del software y su situación actual El software es el conjunto de programas que permite emplear la PC, es decir, es el medio de comunicación con la computadora, el control de sus funciones y su

Más detalles

Unidad III: Introducción a la Programación

Unidad III: Introducción a la Programación Unidad III: Introducción a la Programación 3.1 Características del lenguaje de programación Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a

Más detalles

Computación 1. Programación, Constantes, Variables y Condiciones

Computación 1. Programación, Constantes, Variables y Condiciones Computación 1 Programación, Constantes, Variables y Condiciones Contenido Codificar Construcción de programas Objetivos de la programación Diagrama de flujos Datos Constantes Variables Condiciones Codificar

Más detalles

Tema III: Introducción al lenguaje de programación

Tema III: Introducción al lenguaje de programación Tema III: Introducción al lenguaje de programación Semestre: U-2014 Profesora: Nelly García Mora Agenda 1. Definición 2. Programación estructurada 3. Programación Modular 4. Tipos de lenguaje de Programación

Más detalles

Es un conjunto de palabras y símbolos que permiten al usuario generar comandos e instrucciones para que la computadora los ejecute.

Es un conjunto de palabras y símbolos que permiten al usuario generar comandos e instrucciones para que la computadora los ejecute. Los problemas que se plantean en la vida diaria suelen ser resueltos mediante el uso de la capacidad intelectual y la habilidad manual del ser humano. La utilización de la computadora en la resolución

Más detalles

Computadora y Sistema Operativo

Computadora y Sistema Operativo Computadora y Sistema Operativo Según la RAE (Real Academia de la lengua española), una computadora es una máquina electrónica, analógica o digital, dotada de una memoria de gran capacidad y de métodos

Más detalles

La resolución de un problema

La resolución de un problema CAP. 2. ALGORITMOS Y PROGRAMAS 2.1. Solución de problemas por computadora La resolución de problemas por computadora, es importante para que las personas o usuarios aprendan a programar de manera general,

Más detalles

TEMA 3: El proceso de compilación, del código fuente al código máquina

TEMA 3: El proceso de compilación, del código fuente al código máquina TEMA 3: El proceso de compilación, del código fuente al código máquina 3.1 Fase de compilación y linkado (link, montado o enlace) Un programa escrito en un lenguaje de alto nivel, no puede ser ejecutado

Más detalles

Un diagrama de flujo es un dibujo que utiliza símbolos estándar de diagramación de algoritmos para computadora, en el que cada paso del algoritmo se

Un diagrama de flujo es un dibujo que utiliza símbolos estándar de diagramación de algoritmos para computadora, en el que cada paso del algoritmo se Definición de diagrama de flujo Un diagrama de flujo es un dibujo que utiliza símbolos estándar de diagramación de algoritmos para computadora, en el que cada paso del algoritmo se visualiza dentro del

Más detalles

Metodología de Desarrollo de Programas

Metodología de Desarrollo de Programas Metodología de Desarrollo de Programas Prof. Judith Barrios Albornoz Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Semestre A_2013 Este material

Más detalles

UNIVERSIDAD TECNOLÓGICA NACIONAL INGENIERIA EN SISTEMAS. Cátedra: "ALGORITMOS Y ESTRUCTURAS DE DATOS UNIDAD Nº 1 CONCEPTOS BÁSICOS SOBRE PROGRAMACIÓN

UNIVERSIDAD TECNOLÓGICA NACIONAL INGENIERIA EN SISTEMAS. Cátedra: ALGORITMOS Y ESTRUCTURAS DE DATOS UNIDAD Nº 1 CONCEPTOS BÁSICOS SOBRE PROGRAMACIÓN UNIVERSIDAD TECNOLÓGICA NACIONAL INGENIERIA EN SISTEMAS Cátedra: "ALGORITMOS Y ESTRUCTURAS DE DATOS UNIDAD Nº 1 CONCEPTOS BÁSICOS SOBRE PROGRAMACIÓN Ing. Esp. Rosanna M. MAINIERI Ing. Esp. Rosanna M. MAINIERI

Más detalles

Lógica: Algoritmo: Archivo: Base de datos: Bit:

Lógica: Algoritmo: Archivo: Base de datos: Bit: Lógica: Algoritmo: Archivo: Base de datos: Bit: 1 LÓGICA: Es una secuencia de operaciones realizadas por el hardware o por el software. Lógica del hardware, Son los circuitos y Chips que realizan las operaciones

Más detalles

TEMA2:LAS HERRAMIENTAS DE PROGRAMACION

TEMA2:LAS HERRAMIENTAS DE PROGRAMACION TEMA2:LAS HERRAMIENTAS DE PROGRAMACION 1.Las herramienta de programación. 1.1.Análisis de problemas. 1.2.Diseño de algoritmos. 1.3.Introducción a la plataforma.net Framework Objetivos Definir y comprender

Más detalles

2.3 DEFINICIÓN DE LENGUAJES ALGORÍTMICOS

2.3 DEFINICIÓN DE LENGUAJES ALGORÍTMICOS 2.3 DEFINICIÓN DE LENGUAJES ALGORÍTMICOS Características de los algoritmos Las características fundamentales que debe cumplir todo algoritmo son: Un algoritmo debe ser preciso e indicar el orden de realización

Más detalles

Tema 5. Soporte lógico de computadoras.

Tema 5. Soporte lógico de computadoras. Tema 5. Soporte lógico de computadoras. 5.1 Conceptos generales Como se ha visto previamente, un ordenador consta de dos partes, una la parte física, conocida como "Hardware" y otra, la parte lógica denominada

Más detalles

FUNDAMENTOS DE PROGRAMACIÓN. Algoritmos y Programas

FUNDAMENTOS DE PROGRAMACIÓN. Algoritmos y Programas FUNDAMENTOS DE PROGRAMACIÓN Algoritmos y Programas Dato La palabra proviene del latín datum, forma del verbo dare dar, que significa Lo que es dado Representación de una información de manera adecuada

Más detalles

Programación estructurada

Programación estructurada Programación estructurada Esta metodología de programación : Permite utilizar sentencias de bifurcación condicional estandarizadas. Facilita leer la codificación del programa de inicio a fin en forma continua.

Más detalles

Tema 04: Lenguajes de programación y el lenguaje C

Tema 04: Lenguajes de programación y el lenguaje C Tema 04: Lenguajes de programación y el lenguaje C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A.

Más detalles

C1 INTRODUCCIÓN AL LENGUAJE C. Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid

C1 INTRODUCCIÓN AL LENGUAJE C. Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid C1 INTRODUCCIÓN AL LENGUAJE C Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid Índice 1. Lenguajes de Programación 1. Definición. 2. Niveles

Más detalles

INICIACIÓN A LA PROGRAMACIÓN 1ª parte

INICIACIÓN A LA PROGRAMACIÓN 1ª parte TEMA 4 INICIACIÓN A LA PROGRAMACIÓN 1ª parte Qué es la programación? La programación es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas computacionales. En la actualidad,

Más detalles

Actividad de Evaluación Brandon Emmanuelle Cuevas Rangel GPO: 303 Carrera: Informática 3er Semestre Joel Rocha Barocio Cienega de Flores N.L.

Actividad de Evaluación Brandon Emmanuelle Cuevas Rangel GPO: 303 Carrera: Informática 3er Semestre Joel Rocha Barocio Cienega de Flores N.L. Actividad de Evaluación 2.4.1 Brandon Emmanuelle Cuevas Rangel GPO: 303 Carrera: Informática 3er Semestre Joel Rocha Barocio Cienega de Flores N.L. Las técnicas de programación constituyen parte fundamental

Más detalles

Tema: Introducción a la Programación Estructurada

Tema: Introducción a la Programación Estructurada Tema: Introducción a la Programación Estructurada 1 Objetivos Mostrar el contexto en el que se desarrolla la asignatura. Comprender algunos conceptos como el de algoritmo y programa. Entender las tareas

Más detalles

Tema 03: Programación estructurada

Tema 03: Programación estructurada Tema 03: Programación estructurada M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1 Contenido

Más detalles

[TEMA #2. ETAPAS Y TÉCNICAS PARA EL DESARROLLO DE PROBLEMAS CON AYUDA DEL COMPUTADOR.]

[TEMA #2. ETAPAS Y TÉCNICAS PARA EL DESARROLLO DE PROBLEMAS CON AYUDA DEL COMPUTADOR.] La resolución de un problema mediante una computadora consiste en el proceso que a partir de la descripción de un problema, expresado habitualmente en lenguaje natural y en términos propios del dominio

Más detalles

Titulo de hoy 25/09/2017 COLEGIO SAN ANTONIO MARIA CLARET 1

Titulo de hoy 25/09/2017 COLEGIO SAN ANTONIO MARIA CLARET 1 Titulo de hoy 25/09/2017 COLEGIO SAN ANTONIO MARIA CLARET 1 COMPETENCIAS BÁSICAS Utilizar el lenguaje como una herramienta comunicativa (habla, lectura, escritura, escucha) para construir su propio conocimiento

Más detalles

Organización. Organización. Llenguatges de Programació Curs Gonzalo Besuievsky IMA - UdG. Horario Miércoles de 9:30 a 13:00

Organización. Organización. Llenguatges de Programació Curs Gonzalo Besuievsky IMA - UdG. Horario Miércoles de 9:30 a 13:00 Llenguatges de Programació Curs 03-04 Gonzalo Besuievsky IMA - UdG Organización Horario Miércoles de 9:30 a 13:00 Tutorías Después de clase por mail: gonzalo@ima.udg.es Página del curso http://ima.udg.es/docencia/03-04/3157ra0008/index.html

Más detalles

ETAPA Cómo se llaman los profesionales que escriben el código de los programas? Programadores.

ETAPA Cómo se llaman los profesionales que escriben el código de los programas? Programadores. ETAPA 1 1. A qué se le llama programa? Es un conjunto de instrucciones, comandos, órdenes o procedimientos escritos en un lenguaje de programación para que una computadora pueda realizar una tarea determinada

Más detalles

Unidad II: Análisis semántico

Unidad II: Análisis semántico Unidad II: Análisis semántico Se compone de un conjunto de rutinas independientes, llamadas por los analizadores morfológico y sintáctico. El análisis semántico utiliza como entrada el árbol sintáctico

Más detalles

INSTITUTO TECNOLÓGICO

INSTITUTO TECNOLÓGICO INSTITUTO TECNOLÓGICO DE NUEVO LAREDO Con la Ciencia por la Humanidad Introducción a la Ingeniería en Sistemas Computacionales y al Diseño de Algoritmos Curso propedéutico Instructor: Bruno López Takeyas

Más detalles

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria 1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo

Más detalles

MÓDULO 1: Sistemas de Cómputo

MÓDULO 1: Sistemas de Cómputo Asignatura: PROGRAMACIÓN Código: TE243 Prerrequisitos: Algebra Lineal (S)* Intensidad horaria: 80 H.P.S. Profesor: Jose Norbey Sanchez Fernandez Universidad Tecnológica de Pereira Programa de Tecnología

Más detalles

Introducción a la programación

Introducción a la programación 1 Introducción a la programación Marduk Bolaños Puchet Miércoles 28 de agosto de 2012 Parte I Algoritmos y programación Algoritmos y programación 2 Algoritmo Un algoritmo es una secuencia ordenada, finita

Más detalles

I.S.F.T. Nº 38 Programación I página 1

I.S.F.T. Nº 38 Programación I página 1 Programación I página 1 Una persona piensa y se comporta obedeciendo a un secuencial lógico. Un computador realiza tareas y maneja datos en memoria obedeciendo a una secuencia de pasos lógicos para lo

Más detalles

Guía práctica de estudio 04: Diagramas de flujo

Guía práctica de estudio 04: Diagramas de flujo Página 63/214 Guía práctica de estudio 04: Diagramas de flujo 63 Página 64/214 Guía práctica de estudio 04: Diagramas de flujo Objetivo: Elaborar diagramas de flujo que representen soluciones algorítmicas

Más detalles

Y alternativamente se presentarán soluciones de problemas donde se utilicen:

Y alternativamente se presentarán soluciones de problemas donde se utilicen: Herramientas Para implementar la solución de un problema mediante el uso de una computadora es necesario establecer una serie de pasos que permitan resolver el problema, a este conjunto de pasos se le

Más detalles

Un. I. Introducción a la programación de sistemas

Un. I. Introducción a la programación de sistemas Un. I. Introducción a la programación de sistemas 1.1 Qué es la programación de sistemas? La programación de sistemas comprende el desarrollo de aquellos programas de computadora que tienen una fuerte

Más detalles

Algoritmo. Programa. Lenguaje algorítmico

Algoritmo. Programa. Lenguaje algorítmico ESCUELA DE EDUCACION SECUNDARIA TECNICA N 3 LENGUAJE ELECTRONICO PROFESOR: PAOLO, MARCOS GERMAN TEMA: ALGORITMOS Algoritmo Es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y

Más detalles

Metodología para la solución de problemas programables

Metodología para la solución de problemas programables Metodología para la solución de problemas programables Nosotros efectuamos día a día una serie de pasos, acciones y procedimientos para solucionar problema y esto es de forma natural y casi inconscientemente

Más detalles

INSTITUTO POLITECNICO NACIONAL SECRETARIA ACADEMICA DIRECCION DE ESTUDIOS PROFESIONALES EN INGENIERIA Y CIENCIAS FISICO MATEMATICAS

INSTITUTO POLITECNICO NACIONAL SECRETARIA ACADEMICA DIRECCION DE ESTUDIOS PROFESIONALES EN INGENIERIA Y CIENCIAS FISICO MATEMATICAS ESCUELA: UNIDAD PROFESIONAL INTERDISCIPLINARIA DE INGENIERÍA Y CIENCIAS SOCIALES Y ADMINISTRATIVAS CARRERA: LICENCIATURA EN CIENCIAS DE LA INFORMÁTICA LÍNEA CURRICULAR: COORDINACIÓN: ACADEMIAS DE COMPUTACIÓN

Más detalles

Fundamentos de programación. Organización de una computadora

Fundamentos de programación. Organización de una computadora Fundamentos de programación Organización de una computadora Datos Una computadora procesa datos Los convierte en información significativa Datos >> Computadora >> Información Calculadora Una calculadora

Más detalles

Esp. Alexis Olvany Torres ch. Datos de salida. Datos de salida. Datos de salida

Esp. Alexis Olvany Torres ch. Datos de salida. Datos de salida. Datos de salida Tiempo de Ejecución fuente Descripción abstracta del comportamiento de un programa Máquina abstracta objeto Descripción del comportamiento de un programa independiente de máquina pero fácil de implementar

Más detalles

INDICE Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación Actividades de Programación Resueltas

INDICE Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación Actividades de Programación Resueltas INDICE Prologo a la tercera edición xiii Prologo a la segunda edición xxvii Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación 3 1.1. Organización de

Más detalles

INTRODUCCION A LA PROGRAMACION (C.U.) PROGRAMACION (T.I.G.)

INTRODUCCION A LA PROGRAMACION (C.U.) PROGRAMACION (T.I.G.) INTRODUCCION A LA PROGRAMACION (C.U.) PROGRAMACION (T.I.G.) PRESENTACION: Lic. Jaquelina Jallés Comisión 1: Lunes 8-10 OBJETIVOS: Martes 10-12 Jueves 8-12 A) Desarrollar el pensamiento lógico y estructurado

Más detalles

Lenguajes y Compiladores Introducción. Compiladores 1

Lenguajes y Compiladores Introducción. Compiladores 1 Facultad de Ingeniería de Sistemas Lenguajes y Introducción 1 Objetivos Conocer los fundamentos de construcción de en todas sus fases, presentando los conceptos básicos, definiciones formales, técnicas

Más detalles

Introducción a la programación

Introducción a la programación Introducción a la programación PROGRAMACION I Grado en Matematicas Informática Programación I - 2015/2016 Introducción 1 Introducción a la programación Computador: aparato electrónico capaz de interpretar

Más detalles

Lenguajes. Ciclo de desarrollo. Cód. Máquina Lenguajes alto nivel Lenguaje ensamblador 6-2. Introducción a los microprocesadores IIE FI - UDELAR

Lenguajes. Ciclo de desarrollo. Cód. Máquina Lenguajes alto nivel Lenguaje ensamblador 6-2. Introducción a los microprocesadores IIE FI - UDELAR 6-1 Lenguajes Cód. Máquina Lenguajes alto nivel Lenguaje ensamblador Ciclo de desarrollo 6-2 Nivel de abstracción bajo ceros y unos. Es lo único que entiende el procesador. Objetivo: código de máquina

Más detalles

Lenguajes de Cuarta Generación

Lenguajes de Cuarta Generación Lenguajes de Cuarta Generación Diana Marcela SánchezS http://www.csi.map.es/csi/metrica3/index.html www.csi.map.es/csi/metrica3/ /metrica3/index.htmlindex.html Que es un programa? La unión de una secuencia

Más detalles

Programación Modular. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz

Programación Modular. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Programación Modular Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Programación Modular Un software monolítico no puede ser entendido fácilmente por un solo lector. El

Más detalles

La forma general que tiene un condicional (una pregunta) es la siguiente:

La forma general que tiene un condicional (una pregunta) es la siguiente: Clase teórica 3 Algoritmos en C Página 1 de 6 CONDICIONAL En los lenguajes de programación es común el uso de condicionales que sirven para denotar diferentes alternativas que pueden llevarse a cabo dado

Más detalles

Tipos De Datos. Numéricos. Alfanuméricos (string) Arreglos (Vectores, Matrices) Estructurados Registros (Def. Por el Archivos Usuario) Apuntadores

Tipos De Datos. Numéricos. Alfanuméricos (string) Arreglos (Vectores, Matrices) Estructurados Registros (Def. Por el Archivos Usuario) Apuntadores Tipos De Datos 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

Más detalles

UNIDAD III. TÉCNICA DE PROGRAMACIÓN ESTRUCTURADA

UNIDAD III. TÉCNICA DE PROGRAMACIÓN ESTRUCTURADA UNIDAD III. TÉCNICA DE PROGRAMACIÓN ESTRUCTURADA 1 UNIDAD III. TÉCNICA DE PROGRAMACIÓN ESTRUCTURADA OBJETIVO: Aplicarás la técnica de programación estructurada, analizando su concepto, estructura y función

Más detalles

PRÁCTICA FUNDAMENTOS DE ALGORITMOS I. Objetivos

PRÁCTICA FUNDAMENTOS DE ALGORITMOS I. Objetivos Objetivos El alumno conocerá las estructuras básicas para el diseño de algoritmos 1. Conocerá las estructuras secuenciales y de decisión para construir algoritmos 2. Diseñará algoritmos utilizando las

Más detalles

LÓGICA DE PROGRAMACIÓN

LÓGICA DE PROGRAMACIÓN LÓGICA DE PROGRAMACIÓN Lógica de la Programación Lenguajes de Programación Ing CIP. Mike Joseph Palacios Juárez Clasificación del Software Sistemas Operativos 1. Multitarea 2. Multiusuario 3. Multiproceso

Más detalles

Unidad 2. Introducción Lenguajes y Compiladores

Unidad 2. Introducción Lenguajes y Compiladores Unidad 2 Introducción Lenguajes y Compiladores Principal material bibliográfico utilizado Compiladores Principios, técnicas y herramientas. Aho y Ullman. Addison Wesley. www.jorgesanchez.net www.iqcelaya.itc.mx/~vicente/programacion/tradcomp.pdf

Más detalles

Concepto de compilador Intérprete Fases de un Compilador Herramientas de construcción de Compiladores

Concepto de compilador Intérprete Fases de un Compilador Herramientas de construcción de Compiladores 18:55 1 2 Temas Concepto de compilador Intérprete Fases de un Compilador Herramientas de construcción de Compiladores Objetivo Que el estudiante logre conocer, comprender y manejar conceptos y técnicas

Más detalles

Objetivo específico: Maneja los elementos básicos de algoritmos utilizados para resolver un problema por computadora.

Objetivo específico: Maneja los elementos básicos de algoritmos utilizados para resolver un problema por computadora. Objetivo específico: Maneja los elementos básicos de algoritmos utilizados para resolver un problema por computadora. La palabra algoritmo se deriva de la traducción al latín de la palabra árabe alkhowarizmi,

Más detalles

3. TÉCNICAS DE DISEÑO

3. TÉCNICAS DE DISEÑO 3. TÉCNICAS DE DISEÑO 3.1 Top Down También conocida como de arriba-abajo y consiste en establecer una serie de niveles de mayor a menor complejidad (arriba-abajo) que den solución al problema. Consiste

Más detalles

Contenidos: Definiciones:

Contenidos: Definiciones: Contenidos: Definiciones. Esquema de un ordenador. Codificación de la información. Parámetros básicos de un ordenador. Programas e instrucciones. Proceso de ejecución de una instrucción. Tipos de instrucciones.

Más detalles

Principios de Algoritmia

Principios de Algoritmia Formación de Desarrolladores Revolucionarios Principios de Algoritmia preparando los programadores que la patria necesita prietost@gmail.com Fundamentos de Algoritmia Concepto de Algoritmo Tipos de Algoritmo

Más detalles

Pseudocódigo. La forma en que se escribe un pseudocódigo es la siguiente:

Pseudocódigo. La forma en que se escribe un pseudocódigo es la siguiente: Pseudocódigo El pseudocódigo o pseudolenguaje, son una serie de instrucciones en nuestro lenguaje natural (español, ingles, etc.) y expresiones que representan cada uno de los pasos que resuelven un problema

Más detalles

Programación Orientada a Objetos

Programación Orientada a Objetos Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Programación Orientada a Objetos Algoritmos y Programación II Junio, 2004 Las tecnologías de objetos hoy

Más detalles

INFORMATICA TECNICATURA DE NIVEL SUPERIOR ALGUNOS EJERCICIOS DE SELECCIÓN E ITERACION

INFORMATICA TECNICATURA DE NIVEL SUPERIOR ALGUNOS EJERCICIOS DE SELECCIÓN E ITERACION INFORMATICA TECNICATURA DE NIVEL SUPERIOR ALGUNOS EJERCICIOS DE SELECCIÓN E ITERACION DIIAGRAMAS DE FLUJO Un diagrama de flujo es un dibujo que utiliza símbolos estándar de diagramación de algoritmos para

Más detalles

CAPITULO ALGORITMOS Y PROGRAMAS CONTENIDO

CAPITULO ALGORITMOS Y PROGRAMAS CONTENIDO CAPITULO 1 ALGORITMOS Y PROGRAMAS CONTENIDO 1.1. Los sistemas de procesamiento de la información. 1.2. Concepto de algoritmo. 1.3. Los lenguajes de programación. 1.4. Datos, tipos de datos y operaciones

Más detalles

TEMA 4: ALGORITMOS Y PROGRAMAS

TEMA 4: ALGORITMOS Y PROGRAMAS TEMA 4: ALGORITMOS Y PROGRAMAS TEMA 4: ALGORITMOS Y PROGRAMAS.1 INTRODUCCIÓN1 Análisis del problema..1 Búsqueda del algoritmo..1 Programación del algoritmo.2 ESTRUCTURAS DE CONTROL.3 Estructuras secuenciales.4

Más detalles

Programación Orientada a Objetos Profr. Pedro Pablo Mayorga

Programación Orientada a Objetos Profr. Pedro Pablo Mayorga Actividad 3 Historia de los paradigmas de programación Unidad 1 Paradigma de programación Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No

Más detalles

Fundamentos de Informática 3. Construcción de Software

Fundamentos de Informática 3. Construcción de Software 2 Contenidos Fundamentos de Informática 3. Construcción de Software - Introducción - - - Diseño -Algoritmos -Diagramas de Flujo -Pseudocódigos - Codificación - Pruebas - Mantenimiento Fundamentos de Informática

Más detalles

Tema 5. Diagramas de flujo. Computacion - FA.CE.NA.

Tema 5. Diagramas de flujo. Computacion - FA.CE.NA. Tema 5 Diagramas de flujo D i ag ram a d e F l u j o TEMA5 Diagramas de Flujo. Representación simbólica. Símbolos utilizados. Convenciones. Técnicas de construcción de diagramas. Estructuras básicas. Normas

Más detalles

Unidad 1. Resumen Teórico. Uso de las Computadoras (1) Programación. Uso de las Computadoras (3) Uso de las Computadoras (2)

Unidad 1. Resumen Teórico. Uso de las Computadoras (1) Programación. Uso de las Computadoras (3) Uso de las Computadoras (2) Unidad 1 Resumen Teórico Uso de las Computadoras (1) Desde el punto de vista funcional, podemos decir que Una computadora es una máquina electrónica de propósito general, que recibe como entrada datos,

Más detalles

Unidad I: Conceptos Básicos

Unidad I: Conceptos Básicos Unidad I: Conceptos Básicos 1.1 Clasificación del software de: sistemas y aplicación Varios tipos de software se describen basándose en su método de distribución. Entre estos se encuentran los así llamados

Más detalles

1. Computadores y programación

1. Computadores y programación 1. Computadores y programación Informática y computadora (RAE) Informática (Ciencia de la computación) Conjunto de conocimientos científicos y técnicos que hacen posible el tratamiento automático de la

Más detalles

Programación orientada a objetos

Programación orientada a objetos Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa los objetos en sus interacciones, para diseñar aplicaciones

Más detalles

Guía práctica de estudio 05: Diagramas de flujo

Guía práctica de estudio 05: Diagramas de flujo Guía práctica de estudio 05: Diagramas de flujo Elaborado por: M.C. Edgar E. García Cano Ing. Jorge A. Solano Gálvez Revisado por: Ing. Laura Sandoval Montaño Guía práctica de estudio 05: Diagramas de

Más detalles

1. PRINCIPIOS BÁSICOS DE PROGRAMACIÓN

1. PRINCIPIOS BÁSICOS DE PROGRAMACIÓN 1. PRINCIPIOS BÁSICOS DE PROGRAMACIÓN Las estructuras de datos bien definidas no son adecuadamente utilizadas si no se realiza una buena programación. La programación estructurada tiene la finalidad de

Más detalles