Programación de Computadores

Slides:



Advertisements
Presentaciones similares
IBD Curso 2007 Clase 2.
Advertisements

Diseño y análisis de algoritmos
Sesión 13 Tipos de datos Estruturados Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Programación de Computadores
Programación de Computadores
1.
Unidad 1 DISEÑO DE ALGORITMOS ING. Nelwi Baez. MSC
PROGRAMACIÓN.
Iteración La iteración permite modelar problemas en los cuales una secuencia de instrucciones debe ejecutarse varias veces. La cantidad de iteraciones.
Elementos de Pascal Escribir un programa en Pascal que lea los valores de los catetos de un triángulo rectángulo y calcule y muestre la hipotenusa. program.
PHP-MYSQL OPERADORES EN PHP
Metodología de la Programación
Programación modular Procedimientos y Funciones
Procedimientos y Funciones
Seminario de Actualización - Excel Avanzado y Macros
Tema 2: Lenguaje PHP básico
Descomponer un problema
Bloque 2: Divide y Vencerás
EXCEPCIÓN DE ERRORES.
Programación 1 Introducción
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
C lase 10 COMPUTACION /17/2014Computacion - Fac. Ingeniería2  Ademas de los ya vistos (tipos simples), puede usarse como parámetros variables.
Funciones en lenguaje C
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.
Departamento de Informática Universidad Técnica Federico Santa María Tema 7: Subprogramas Programación de Computadores (IWI-131) Luis Pizarro Q.
TRAMPAS EN EL DISEÑO DE LENGUAJES CON RELACIÓN A LOS NOMBRES - REGLAS DE ALCANCE - COMPILACIÓN POR SEPARADO CONTROL DE FLUJO - EVALUACIÓN DE EXPRESIONES.
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
Programación de Computadores
Sesión 6 Sentencias de Repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Semana 5 Subprogramas..
PROCEDIMIENTOS FUNCIONES
1 Concurrencia Procesos y Programas. 2 Establecer Comunicación entre procesos (memoria común)
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
COMPUTACION 2009 Clase 2.
Programación Modular (Pseudocódigo)
Fundamentos de programación
Algoritmos.
Página Web del Lenguaje Pascal.
COMPUTACION 2009 Clase 6 Clase 7.
Capítulo 2 – Estructuras de Control
Programación I Universidad Nacional de Luján
Resolución de Problemas y Algoritmos Uso de iteración con secuencias
Programación en Pascal
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Sesión 17 Tipos de datos Estruturados Arreglos de Registros Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Fundamentos de Programación
LENGUAJE DE PROGRAMACIÓN
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.
COMPUTACION 2009 C lase 4 Programa PASCAL SENTENCIAS DATOS Expresiones Tipos Declaración de variables Declaración de variables Asignación Entrada/Salida.
Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid Bloque 1: Introduccion Unidad 3: Análisis de algoritmos (parte I)
Ciclos (Loops, Repeticiones) Permiten ejecutar una secuencia de sentencias mas de una vez. Hay 2 tipos de loops:  WHILE repite la acción un número indefinido.
Teoría – Alejandro Gonzalez
Figure: Algoritmos Conceptos básicos. Programación: 1.Establecer una secuencia de acciones que: puedan ser ejecutadas por el procesador realicen una.
Ada 2º Parte (variables, ámbitos , subrutinas , tipos abstractos de datos y excepciones)
Definir un vector Forma general Variable=[tipo]*tamaño Tipo: es el valor inicial con el cual quedarán llenas todas las posiciones creadas del vector. Tamaño:
Sesión 9 Subprogramas Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Estructura general de un programa en el servidor de Bases de Datos.
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Contenido:  ¿Qué son los Punteros?  Los Procedimientos: New y Dispose.
Sesión 4 Secuencias Básicas Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
29/5/2002 Sesión 18 Tipos de datos Estruturados Archivos de Caracteres Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Funciones y Procedimientos Profesor: Rodrigo Cruzat.
Declaraciones. 1 Nombres de identificadores Identificador: – Nombres usados para referirse a las variables, identificar funciones o etiquetas definidos.
Programación de Computadores
* Cuando nos permite desarrollar un programa que necesitamos para tomar un conjunto de buenas prácticas para hacer eso. Esto se debe a que podemos ahorrar.
MEMORIA DINÁMICA.
MODULA Lenguaje de Programación Anabel Martín González
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.
La programación modular es un paradigma de programación que consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible.
Transcripción de la presentación:

Programación de Computadores Lenguaje Pascal 08/4/2002 Sesión 8 Subprogramas Prof:Eridan Otto

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas TEMARIO Subprogramas PROCEDURE FUNCTION Corrección primer certamen

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:Diseño y estructura de Programas Introducción: Hasta ahora se ha visto una serie de instrucciones que combinadas logran un resultado. Cuando aumenta la complejidad de los problemas es recomendable dividir el problema en problemas más pequeños y manejables. Resolviendo por separado cada uno de ellos. Luego ensamblarlos para obtener el resultado en un programa principal simple. Este es el llamado enfoque TOP-DOWN de diseño de programas. Ventajas: Mejor legibilidad del programa Aislar los errores Reutilizar partes del programa. SubProblema 1 Problema SubProblema 2 SubProblema n

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:Diseño y estructura de Programas Introducción: Habrá una correspondencia entre problema --- > Programa sub- problema --- > Sub Programa Ejemplo: Diseñar un programa pascal que calcule la suma de los n primeros términos de una sucesión geométrica de razón r y primer término a.: Suma = S ar , sabemos que se puede usar la fórmula Suma=a*(1-r ) El problema se puede subdividir en (1) Lectura de datos (2) Cálculo de la expresión (3) Salida de resultados A su vez, el cálculo de la expresión matemática no es inmediato puesto que , es necesario calcular r , donde r es real y n es entero, descomponiendo el sub problema (2) en: (2.1) Obtener r (2.2) Realizar operaciones aritméticas. n-1 n i i=0 1-r n n

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:PROCEDURE Definición: En pascal se pueden crear sub programas con la definición de procedimientos, que son parte de la zona de declaración de un programa. Sintaxis: es similar a la de un programa PASCAL, pero se usa la palabra reservada PROCEDURE, para indicar que se trata de un subprograma parcial que es parte de un programa global: PROCEDURE <identificador:nombre del procedimiento> (<parámetros> ); <Zona declaraciones LOCALES> BEGIN <sentencias> END; <parámetros>: se utilizan para comunicar valores de datos al procedimiento, desde el bloque donde ha sido llamado. Por el momento no será detallado.Puede ir vacío. <Zona declaraciones LOCALES>: tiene los mismos elementos que un programa pascal cualquiera, la diferencia es que las variables definidas en esta zona son llamadas LOCALES, y no se pueden usar fuera del procedimiento. <sentencias>: sentencias que constituyen el algoritmo que realizará el procedimiento, y en el se pueden usar datos definidos en la Zona de declaraciones LOCALES, del programa principal, GLOBALES, o parámetros.

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:PROCEDURE Para el ejemplo: Aún sin definir el código para cada procedimiento , se puede definir el programa GLOBAL: PROGRAM SumaProgresión; VAR n :INTEGER; r,a,suma :REAL; {se deben definir los procedimientos y las funciones} .......... BEGIN Leerdatos; CalcularExpresion; DesplegarResultados; END. {programa}

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:PROCEDURE Para el ejemplo: Primer procedimiento PROCEDURE Leerdatos; BEGIN WRITE (‘Ingrese valor inicial de la Serie:’); READLN(a); REPEAT WRITE (‘Ingrese número de términos); READLN(n); UNTIL n > 0; WRITE (‘Ingrese razón de la Serie:’); READLN(r); END; Segundo procedimiento PROCEDURE CalcularExpresion; VAR i: INTEGER; {variable local} potencia :REAL; BEGIN potencia := 1; FOR i :=1 TO n DO {n variable global} potencia := potencia * r; suma := a*(1-potencia)/(1-r); END;

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:PROCEDURE Para el ejemplo: Tercer procedimiento PROCEDURE DesplegarResultados; BEGIN WRITELN (‘Resultado de la Serie:’,suma); END;

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:PROCEDURE Para el ejemplo: Integrando, el programa queda PROGRAM SumaProgresión; VAR n :INTEGER; r,a,suma:REAL; PROCEDURE Leerdatos; BEGIN WRITE (‘Ingrese valor inicial de la Serie:’); READLN(a); REPEAT WRITE (‘Ingrese número de términos); READLN(n); UNTIL n > 0; WRITE (‘Ingrese razón de la Serie:’); READLN(r); END; PROCEDURE CalcularExpresion; VAR i: INTEGER; {variable local} potencia :REAL; potencia := 1; FOR i :=1 TO n DO {n variable global} potencia := potencia * r; suma := a*(1-potencia)/(1-r); PROCEDURE DesplegarResultados; WRITELN (‘Resultado de la Serie:’,suma); LeerDatos; CalcularExpresion; DesplegarResultados; END.

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:FUNCTION Definición: En pascal, así como ORD(), es una función, el programador puede crearse sus propias funciones. Tienen estructura parecida a la de un procedimiento, la diferencia es que se devuelve un valor, por lo que la función puede ser usada en una expresión. Sintaxis: FUNCTION <identificador función> (<parámetros> ):<Tipo Dato>; <Zona declaraciones LOCALES> BEGIN <sentencias> END; <parámetros>: <identificador1>, ..., <identificador n>:<tipo dato> Pueden ir varias series de identificadores con un tipo de dato, luego punto y coma y otra serie para un tipo de dato diferente. <Zona declaraciones LOCALES>: igual que procedimiento. <sentencias>: igual que procedimiento. La diferencia es que la función debe devolver el valor (terminando su ejecución) con la instrucción: <identificador función> := <expresión>;

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:Funciones Ejemplo: Siguiendo con el problema anterior, sería útil contar con una función que calculara la potencia de cualquier número y luego utilizarla cambiando el procedimiento CalcularExpresion. Parámetros, por valor FUNCTION poten(base: REAL;exponente: INTEGER):REAL; VAR i: INTEGER; potencia :REAL; BEGIN IF exponente = 0 THEN poten:=1 {en este caso la función termina y devuelve 1} ELSE IF exponente <1 THEN BEGIN base := 1/ base; exponente:=-1*exponente END; potencia := 1; FOR i :=1 TO exponente DO potencia := potencia * base; poten := potencia ; (*se devuelve el valorde la función*)

Programación de Computadores Lenguaje Pascal Sesión 8: Subprogramas:Funciones Ejemplo: Finalmente teniendo esta función el procedimiento queda: PROCEDURE CalcularExpresion; VAR BEGIN suma := a*(1-poten(r,n))/(1-r); END; Parámetros El programa final, tendría tres procedimientos y una función.

Fin Clase 8