300 likes | 483 Views
Programación de Computadores. Paralelo 6 Profesor: Marcos Levano Email: mlevano@inf.utfsm.cl Primer Semestre 2005 http://www.inf.utfsm.cl/~mlevano. Universidad Técnica Federico Santa Maria. CATEDRA Lunes : 8:00 - 9:30 AM Miércoles : 8:00 - 9:30 AM Sala: C - 229. HORARIOS.
E N D
Programación de Computadores Paralelo 6 Profesor: Marcos Levano Email: mlevano@inf.utfsm.cl Primer Semestre 2005 http://www.inf.utfsm.cl/~mlevano Universidad Técnica Federico Santa Maria
CATEDRA Lunes : 8:00 - 9:30 AM Miércoles : 8:00 - 9:30 AM Sala: C - 229 HORARIOS Universidad Técnica Federico Santa Maria
Objetivos General • Programar un computador utilizando un lenguaje de programación estructurada. Universidad Técnica Federico Santa Maria
Objetivos Específicos • Utilizar instrucciones básicas de un lenguaje de programación estructurada: secuencia selección y repetición. • Utilizar las capacidades de estructuras de datos simples y compuestas. Universidad Técnica Federico Santa Maria
Objetivos Específicos • Diseñar programas modulares mediante subrutinas. • Desarrollar programas para la manipulación de archivos de datos. Universidad Técnica Federico Santa Maria
Programación en Pascal Sesión: 1 Algoritmos Universidad Técnica Federico Santa Maria
Contenido • Análisis y Resolución de Problemas • Pseudocodigo • Entrada y Salida de Datos • Asignación • Estructuras de Control: secuencia • Ejercicios. Universidad Técnica Federico Santa Maria
1. Análisis y Resolución de Problemas • Para el análisis se enfoca a trabajar con algoritmos como método de resolución de problemas. Universidad Técnica Federico Santa Maria
La Tarea de la programación: • Consiste en lo que debe hacer un computador, para resolver un problema concreto en un lenguaje de programación. Universidad Técnica Federico Santa Maria
1.Fase: Análisis del problema, estableciendo con precisión lo que se plantea. 2 Fase: Solución conceptual del problema, describiendo un método (Algoritmo) que lo resuelve. 3 Fase: Escritura del algoritmo en un lenguaje de programación. Fases que se debe tener en cuenta: Universidad Técnica Federico Santa Maria
Primera Fase • Consiste en precisar el enunciado, identificar datos de entrada y los resultados que se desea obtener. • Descripción precisa del problema a resolver o especificación. Universidad Técnica Federico Santa Maria
Segunda Fase • Trata del método o Algoritmo, tal que partiendo de datos apropiados lleve sistemáticamente a los resultados descritos en la especificación. • Debe ser correcto; esto es, que resuelva el problema especificado. Universidad Técnica Federico Santa Maria
Tercera Fase • Para que el computador resuelva el problema hay que escribir el algoritmo en un lenguaje de programación. Universidad Técnica Federico Santa Maria
Algoritmo Es la descripción precisa de los pasos que nos llevan a la solución de un problema planteado. Los pasos son, en general, acciones u operaciones que se efectúan sobre ciertos objetos. Universidad Técnica Federico Santa Maria
Proceso (instrucciones) Entrada (datos) Salida (Resultados) Un algoritmo afecta tres partes Universidad Técnica Federico Santa Maria
Características de un algoritmo • Precisión: debe expresarse de forma NO ambigua. Afecta por igual a dos aspectos. A) al orden (encadenamiento o concatenación) de los pasos que han de llevarse a cabo. B) al contenido de las mismas. Pues cada paso debe saberse realizar de manera automática. Universidad Técnica Federico Santa Maria
Características de un algoritmo • Determinismo: todo algoritmo debe responder del mismo modo ante las mismas condiciones. • Finitud:la descripción de un algoritmo debe ser finita. Universidad Técnica Federico Santa Maria
Cualidades deseables de un algoritmo • Generalidad Es deseable que un algoritmo sirva para una clase de problemas lo mas amplio posible. • Eficiencia Se considera eficiente cuando menos pasos emplea en llevar acabo su cometido. Universidad Técnica Federico Santa Maria
Manera de explicar o escribir un algoritmo: Ello se puede explicar: • Mediante diagramas de flujo. • Mediante Seudocodigo. Universidad Técnica Federico Santa Maria
Ejemplo de un Procedimiento paso a paso Tarea: Hacer una llamada por teléfono publico. Pasos: 1. Ir a un teléfono. 2. Levantar el auricular del teléfono. 3. Esperar el tono. 4. Sacar monedas exactas para hacer la llamada. 5. Meter las monedas en la ranura. 6. Marcar el número. Universidad Técnica Federico Santa Maria
Ejemplo suma de 2 números enteros paso a paso Enunciado: sumar dos números enteros a y b. Consiste en ir pasando de a a b una unidad cada vez, de forma que, cuando a = 0, el resultado será el valor de b. Universidad Técnica Federico Santa Maria
La forma como se lleva a cabo: Ejemplos: repetir (a,b) → (a -1, b +1) → (0,b) → b (2,3) → (1,4) → (0,5)→ 5 (4,4) →(3,5) →(2,6) →(1,7) →(0,8) → 8 Universidad Técnica Federico Santa Maria
Ejemplo suma de 2 números enteros paso a paso Pasos: 0. inicio • Leer dato a • Leer dato b • Verificar a=0, ir al paso 6. • Desminuir una unidad a a (a = a-1) • Aumentar en una unidad a b (b=b+1) • Imprimir b • fin Universidad Técnica Federico Santa Maria
seudocodigo • Sean a y b que pertenecen a Z • Leer a y b • mientras a <> 0 ,hacer a = a-1 y b=b+1 • Imprimir b. Universidad Técnica Federico Santa Maria
Diagrama de flujo: Universidad Técnica Federico Santa Maria
Programa en pascal program suma; uses Crt; var a,b: integer; begin clrscr; {limpia pantalla} writeln(‘Ingrese los numeros ’); readln(a); readln(b); while a<>0 do begin a := a-1; b:= b+1; end; { fin del while} writeln(‘La suma es: ’ , b ); readln; end.
Programación estructurada (PE) Bohm C. and G. Jacopini (1966) demostraron que todos los programas pueden escribirse en términos de simplemente tres estructuras de control: • Estructura de secuencia, • Estructura de selección, y • Estructura de Repetición Universidad Técnica Federico Santa Maria
paso 1 paso 2 Estructuras de control SECUENCIA: Se centra en la concatenación de pasos que ocurren uno antes que el otro. Se ejecutan una tras otra. Universidad Técnica Federico Santa Maria
Asignación • La instrucción de asignación se utiliza para dar un valor inicial a las variables o para modificar el que ya tienen. • Ejemplo: Contador := 0 {Se inicializa una variable} A := B {a A se le asigna B} Universidad Técnica Federico Santa Maria
Ejercicios. Resolver los siguientes problemas paso a paso y elaborar sus diagramas de flujos. • Resolver una ecuación de primer grado a + bx =0. ( x pertenece a los enteros.) 2. Sumar los 50 primeros números. 3. Restar dos números reales. ejemplo: (b,a) → ? Universidad Técnica Federico Santa Maria