FUNDAMENTOS DE PROGRAMACIÓN

Slides:



Advertisements
Presentaciones similares
Resolución de Problemas Algoritmos y Programación
Advertisements

LENGUAJES DE PROGRAMACIÓN Y ALGORITMOS
Nuestro reto es educar al pensamiento, para que razone de acuerdo a ciertas reglas; con ello podremos ser más eficientes al momento en que ordenamos.
Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas.
CARRERA: INGENIERIA CIVIL UNI-RUACS
MÉTODOS Y ELEMENTOS DE PROGRAMACIÓN
SOFTWARE DE PROGRAMACIÓN
Resolución de Problemas Algoritmos y Programación
INTRODUCCION A LOS ALGORITMOS (Conceptos previos)
Técnico en programación de Software
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERIA DIVISIÓN DE INGENIERÍA ELÉCTRICA COMPUTACIÓN PARA INGENIEROS NOTA IMPORTANTE: Para complementar.
Programación 1 Introducción
Introducción a la programación
Programas Son una serie o secuencia de instrucciones entendibles por los ordenadores que permiten la realización de las acciones o tareas para las que.
Tema 6. Conceptos básicos de programación
TRADUCTOR DE UN PROGRAMA
INTRODUCCIÓN A LA COMPUTACIÓN 12va Semana – 19va Sesión Miércoles 18 de Mayo del 2005 Juan José Montero Román
Fundamentos de Programación
Proceso de información en la computadora
LENGUAJES DE PROGRAMACIÓN
Tema 1 Entorno de la programación. Conceptos elementales Algoritmo  Secuencia ordenada de pasos exentos de ambigüedad que conduce a la resolución de.
 Fue en el año 1945 cuando el matemático Jhon Von Neumann, fascinado por las posibilidades del ENIAC, demostró que una computadora podía tener una estructura.
SOFTWARE DE PROGRAMACIÓN
LENGUAJE DE PROGRAMACIÓN
Tema 6. Conceptos básicos de programación (Repaso) Prof. María Alejandra Quintero Informática Año 2013.
FUNDAMENTOS DE PROGRAMACIÓN ISC. GABRIEL ZEPEDA MARTÍNEZ EST. ABRAHAM F. MACHUCA VAZQUEZ.
LÓGICA DE PROGRAMACIÓN MARÍA TERESA DÍAZ DUQUE Grado 10° TECNOLOGÍA E INFORMÁTICA COLEGIO DE LA UPB 2015.
Diseño de algoritmos La computadora puede realizar procesos y darnos resultados, sin que tengamos la noción exacta de las operaciones que realiza. Con.
Fundamentos de programación Organización de una computadora.
1.4 Traductor y Su estructura
LENGUAJES DE PROGRAMACIÓN
U1. Introducción a la programación
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
TEMAS PRINCIPALES. ALGORITMOS. CONCEPTOS El algoritmo es un método para resolver un problema mediante una serie de pasos definidos, precisos y finitos.
FUNDAMENTOS DE PROGRAMACION
COMPILADORES DIANA ROCIO OLAYA MESA.
Metodología para la construcción de programas
Introducción a la tecnología Realizado por: Miguel Ángel Arias.
ALGORITMOS La palabra algoritmo se deriva de la traducción al latín de la palabra árabe alkhowarizmi, nombre de un matemático y astrónomo árabe que escribió.
Prof. Gabriel Matonte Programación I Prof. Gabriel Matonte
Representación de Algoritmos
Algoritmos y pseudocódigos
LENGUAJES DE PROGRAMACION
Ing. Rodolfo Junior Miranda Saldaña CIP: Chimbote- 2013
Introducción a los programas
Tipo de Errores.
Lenguajes de Programación
JULIAN DARIO RAMIREZ CORRECHA PROSOF12. °QUE ES UN ALGORITMO °CLASES DE ALGORITMOS °QUE ES UN LENGUAJE DE PROGRAMACION °QUE ES UN LENGUAJE DE PROGRAMACION.
Lenguajes de Programación
Unidad 1 Introducción a los Programas Concepto de Programa El término programa (del latín programma, que a su vez proviene de un vocablo griego) tiene.
Metodología de la programación
Prof. Flor Narciso Departamento de Computación
Lenguajes de Programación
Elaboración de algoritmos usando lógica de programación
Lenguaje programación
Es un tipo especial de software que nos permite *Crear *Desarrollar *Programar otras aplicaciones. Haciendo uso de sus conocimientos lógicos y lenguajes.
Ciclo de desarrollo del software
TEMA 4: MÉTODOS Y ELEMENTOS DE PROGRAMACIÓN
 Panorama General Fundamentos de Programación M.I. Jaime Alfonso Reyes Cortés.
PARCIAL 1 Introducción a los programas. Concepto de Programa  El término programa (d el latín programma, que a su vez proviene de un vocablo griego)
Especificación del Problema Partimos del hecho de un programador no puede resolver un problema que no entiende. Por esta razón, la primera etapa en todo.
PARCIAL 1 Introducción a los programas. Concepto de Programa  El término programa (d el latín programma, que a su vez proviene de un vocablo griego)
Fundamentos de Programación Unidad I Conceptos Básicos.
ELEMENTOS BÁSICOS DE PROGRAMACIÓN EN C# Mtro. José David Uc Salas
INFORMÁTICA II TEMA: DISEÑA Y ELABORA ALGORITMOS DOCENTE: MARÍA DOLORES GARCÍA PONCE CAMPUS TONALÁ JALISCO.
Algoritmos Computacionales
Tema 8: Programación estructurada Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar.
Prof. Jonathan Silva Ingeniería Civil – Informática I Ingeniería Civil Informática I Clase 3 – Diseño de Programas.
FUNDAMENTOS DE PROGRAMACIÓN
FUNDAMENTOS DE PROGRAMACIÓN
Transcripción de la presentación:

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 para su tratamiento por un ordenador

Dato Son representaciones simbólicas de objetos, hechos, instituciones, conocimientos. Ejemplos 15 25º C 25 m 31-10-2005 Febrero María Pérez

Información Los datos organizados o procesados adquieren significado y proporcionan conocimiento o desencadenan un comportamiento sobre los hechos u objetos que lo originaron La información se resumen en : Datos + significado

Un grupo de datos es información Datos: 19- Marzo – Maria – 20 ptos. Información: El 19 de marzo se publicó en acta la calificación de 20 ptos para María El principal objetivo de la información consiste en aumentar el conocimiento o reducir la incertidumbre.

Información Ejemplos Juan tiene 15 años 25º C fue la temperatura de esta mañana. El edificio “Robles” mide 25 m de altura La fecha de hoy es 31-10-2005 Febrero tiene 28 días y 29 si el año es bisiesto. María Pérez es un nombre muy común

Problema Es un asunto o un conjunto de cuestiones que se plantean para ser resueltas. La naturaleza de los problemas varía con el ámbito o el contexto: problemas matemáticos, químicos, filosóficos, etc. Es importante que al abordar un problema se tenga una descripción simple y precisa del mismo, de lo contrario resultaría complejo modular, simular, o programar su solución en un ordenador.

Problema Problema Diseño Algoritmo Análisis Programa Un programador es una persona que resuelve problemas, y para llegar a ser un programador eficaz se necesita aprender a resolver problemas de un modo riguroso y sistemático Problema Diseño Algoritmo Análisis Programa

Problema Algunos de los pasos para solucionar un problema son: Análisis: consiste en el estudio detallado del problema. Se debe identificar los datos de entrada, de salida y la descripción del problema. Diseño del algoritmo, que describe la secuencia ordenada de pasos que conduce a la solución de un problema dado. Expresar el algoritmo como un programa en un lenguaje de programación adecuado (Fase de Codificación) Ejecución y validación del programa por el computador

Algoritmo Etimología: Proviene del nombre del matemático persa Mohammed Al-khowanzmi, cuyo apellido traducido al latín es Algorismus Conjunto de acciones que especifican la secuencia de operaciones a realizar, en orden, para resolver un problema Los algoritmos son independientes tanto del lenguaje de programación como del computador que los ejecuta.

Algoritmo Finito: un algoritmo siempre debe terminar después de un número finito de pasos Definido: si se sigue un algoritmo dos veces se debe obtener el mismo resultado Preciso: indicar exactamente el orden de realización de las instrucciones

Algoritmo Ejemplo tradicional de un algoritmo: Cambiar la rueda pinchada de un coche

Algoritmo 1. Buscar herramientas, rueda de repuesto y triángulo de señalización 2. Ubicar el triángulo en el lugar adecuado 3. Ir al lugar de la rueda averiada 4. Sacar las tuercas 5. Colocar el gato 6. Levantar el coche

Algoritmo 7. Sacar la rueda 8. Colocar la rueda de Repuesto 9. Colocar las tuercas 10. Apretar las tuercas 11. Guardar las herramientas FIN

Fases de Desarrollo de un Algoritmo Producto Análisis Especificación Diseño Algoritmo Codificación Programa Compilación Interpretación Prog. Ejecutable Pruebas Aplicación

Algoritmo Fase de Análisis: consiste en el estudio detallado del problema con el fin de obtener una serie de documentos (especificación) en los cuales quedan totalmente definido el proceso a seguir en la automatización Estudio detallado Documentos de Especificación

Algoritmo Diseño: consiste en la realización del algoritmo que resuelve el problema de acuerdo a la especificación dada en la fase anterior. El algoritmo se representa mediante pseudocódigo. Algoritmo PRUEBA Inicio Variables A,B,C: entero Leer(A,B) C=A+B Escribir (C) Fin Documentos de Especificación

en un Lenguaje de Programación Algoritmo Codificación: consiste en la traducción del algoritmo a un programa escrito en un lenguaje de programación Algoritmo Sumar Inicio Variables A,B,C: entero Leer(A,B) C=A+B Escribir (C) Fin Programa escrito en un Lenguaje de Programación

Algoritmo Compilación/Interpretación: consiste en obtener el programa ejecutableobjeto a partir del programa fuente. Programa Ejecutable Programa fuente

Algoritmo Prueba: consiste en determinar si el programa funciona correctamente y realiza las operaciones que esperamos de él. Aplicación Programa Ejecutable

Lenguajes de programación Lenguaje: conjunto de reglas y convenciones que se utilizan para comunicar información. Lenguaje de Programación: es un lenguaje que permite la traducción de un algoritmo para que sea entendible por el computador. Son los lenguajes utilizados para escribir programas de ordenadores. Tipos de Lenguaje de Programación: Lenguaje de Máquina Lenguaje de Bajo Nivel (Ensamblador) Lenguaje de Alto Nivel

Lenguaje de máquina Son aquellos que están escritos en lenguaje directamente inteligibles por la máquina, ya que sus instrucciones son cadenas binarias (0’s ,1’s) que especifican una operación. Las instrucciones en lenguaje máquina dependen del Hardware de la computadora, difiere de una PC a otra. La ventaja de los lenguajes máquina es que ofrecen mayor velocidad de ejecución. Existen algunas desventajas: dificultad y lentitud en la codificación, poca fiabilidad, los programas no son portables.

Ejemplo Lenguaje Máquina 11001010 00010111 11110101 00101011 00010111 11110101 00101011 00101011 11001010 11110101 00101011 00101011 11001010 11001010 11110101 00101011

Lenguaje de bajo nivel Son lenguajes que permiten escribir programas con instrucciones similares al lenguaje humano. Son más fáciles de utilizar que los lenguajes de máquina, pero éstos también dependen de la máquina en particular. El mejor ejemplo es el lenguaje ensamblador Un programa escrito en lenguaje ensamblador requiere una fase de traducción. Entre las desventajas tenemos: que este lenguaje depende de la máquina y demanda una mayor exigencia para los programadores, ya que deben conocer tanto las técnicas de programación así como el interior de la máquina

Lenguaje de alto nivel Son los más utilizados por los programadores Son independientes de la máquina Los programas escritos en estos lenguajes son portables Aumento de la ocupación de la memoria Las estructuras de los programas se basan en reglas sintácticas Ejemplos: C, C++, Visual C++, Visual Basic, Visual C#,Pascal, Ada, Delphi, Java, php...

Ejemplo Lenguaje alto nivel #include <stdio.h> int main(void) { printf("Hola, Mundo\n"); }

Traductores de Lenguaje Traductores de Lenguajes: son programas que traducen a su vez los programas fuentes escritos en lenguajes de alto nivel a código máquina. Estos se dividen en intérpretes y compiladores.

Intérprete Intérprete: es un traductor que toma un programa fuente, lo traduce y a continuación lo ejecuta. (Basic, Smalltalk)

Compilación Compilador: es el proceso de traducción de programas fuentes a programas objetos. En este proceso se debe utilizar como paso intermedio un programa llamado enlazador (linker) el cual da como resultado un programa en lenguaje máquina directamente ejecutable.                                                                                                                                      

Etapas de programación Errores léxicos Tiempo de compilación Código Fuente APLICACIÓN BUENA PROGRAMACIÓN Modificación del programa fuente Compilador SI Existen Errores SI SI No Código objeto Errores lógicos Tiempo de pruebas Linkado/ Interpretación NO Existen Errores Programa Ejecutable Errores de ejecución Tiempo de ejecución No Existen Errores Pruebas