La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

COMPUTACION 2009 Clase 1. 9/17/2014 Computación - Fac. Ingeniería - UNMDP2 Régimen de cursada  1 clase teórica (2 horas)  1 clase práctica (3 horas)

Presentaciones similares


Presentación del tema: "COMPUTACION 2009 Clase 1. 9/17/2014 Computación - Fac. Ingeniería - UNMDP2 Régimen de cursada  1 clase teórica (2 horas)  1 clase práctica (3 horas)"— Transcripción de la presentación:

1 COMPUTACION 2009 Clase 1

2 9/17/2014 Computación - Fac. Ingeniería - UNMDP2 Régimen de cursada  1 clase teórica (2 horas)  1 clase práctica (3 horas)  1 clase análisis y diseño (1 hora)  2 parciales (1 ero escrito; el 2 do en computadora y multiple-choice para redes y SO)

3 Horarios de clases teóricas 1.Miércoles 8.30 a 10.30 hs 2.Miércoles 11 a 13 hs. 3.Miércoles de 13 a 15 hs. 9/17/2014 Computación - Fac. Ingeniería - UNMDP3

4 9/17/2014 Computación - Fac. Ingeniería - UNMDP4 Clases prácticas CLASES DE LABORATORIO: Comienzan el jueves 12/03 CLASES TEORICO PRACTICA: Comienzan el jueves 19/03

5 9/17/2014 Computación - Fac. Ingeniería - UNMDP5 HORALUNESMARTESMIÉRCOLESJUEVESVIERNES 8:00 - 8:30 Laboratorio 8:30 - 9:00 TURNO 2 9:00 - 9:30( 8 a 11) Laboratorio 9:30 - 10:00Cirimelo TURNO 4 10:00 - 10:30Gelon (9 a12) Laboratorio 10:30 - 11:00Zapirain Alvarez TURNO 6 11:00 - 11:30 Teorico práctico Arroyo - Mateos(10 a 13) 11:30 - 12:00AULA 13 DistéfanoArona 12:00 - 12:30 Teorico práctico Pasetto 12:30 - 13:00 AULA 8 13:00 - 13:30 Teorico práctico 13:30 - 14:00 AULAS: 10 y Laboratorio 14:00 - 14:30 Laboratorio Clase 14:30 - 15:00 TURNO 7TURNO 1Teorico/práctica 15:00 - 15:30 (14 a 17) 14 a 16 hs. 15:30 - 16:00 Laboratorio EvansAznarMoler 16:00 - 16:30 Teorico práctico TURNO 5 MeijomeLizarralde 16:30 - 17:00 AULA Laboratorio(15.30 a 18.30) 17:00 - 17:30 Laboratorio Giordano Teorico práctico 17:30 - 18:00 TURNO 3 Marsiglio AULA Laboratorio 18:00 - 18:30 (17 a 20) 18:30 - 19:00 Frassoni Teorico práctico 19:00 - 19:30RuizAULA 10 19:30 - 20:00 Horarios de las clases practicas. Tiene que elegir: 1 turno laboratorio(amarillo) 1 turno teorico/pract (celeste) Horarios de las clases practicas. Tiene que elegir: 1 turno laboratorio(amarillo) 1 turno teorico/pract (celeste) Si le ha quedado algún tema flojo o quiere reforzar su conocimiento, dispone de una clase globalizadora el viernes

6 9/17/2014 Computación - Fac. Ingeniería - UNMDP6 Páginas WEB http://www3.fi.mdp.edu.ar/computacion (novedades, información y materiales) http://www3.fi.mdp.edu.ar/soporte/comp utacion (software)

7 9/17/2014 Computación - Fac. Ingeniería - UNMDP7 Temas de la clase 1: Introducción al lenguaje Pascal  Algoritmo  programa  Acciones=sentencias ejecutables  Estructura de un programa Pascal  Tipos de datos  Sentencias de Asignación  Sentencias de Entrada /Salida  Prueba de escritorio

8 9/17/2014 Computación - Fac. Ingeniería - UNMDP8 Problemas Sumar numeros enteros Encontrar las raices de una ecuación cuadrática Invertir una matriz Resolver un sistema de ecuaciones diferenciales Traducir un texto COMO se resuelven estos problemas en una computadora?

9 Encontrar una raíz de la siguiente ecuación cuadrática : x 2 - 4 x +4 = 0 Problema

10 ALGORITMO RAIZ1 1.Ingresar los valores de los coeficientes de la ecuación 2.Calcular el discriminante 3.Calcular una raíz 4.Fin de algoritmo RAIZ1 1.Ingresar los valores 1, -4 y 4 2.Discriminante  3.Raiz  4.Fin del algoritmo RAIZ1 SOLUCION

11 9/17/2014 Computación - Fac. Ingeniería - UNMDP11 ALGORITMO Es un procedimiento con las siguientes características :  Posee una secuencia finita y ordenada de acciones primitivas.  Las acciones primitivas son no ambiguas  La ejecución de la secuencia de acciones primitivas, en el orden dado, conduce a la solución del problema en un tiempo finito.

12 9/17/2014 Computación - Fac. Ingeniería - UNMDP12 Contexto en el que se diseña un algoritmo:  PROCESADOR: es toda entidad capaz de “entender” ordenes elementales y ejecutarlas.  ACCIONES PRIMITIVAS: órdenes elementales entendidas por el procesador que se emplea.  ACCIONES NO PRIMITIVAS: son órdenes no elementales de una abstracción mayor a las órdenes elementales. Cada una de ellas puede ser dividida en otras acciones (primitivas o no).

13 Dados 3 números enteros (cualesquiera), se desea detectar los que son positivos y escribirlos. Problema

14 ALGORITMO DECISION 1.Ingresar a,b,c 2.Si a es positivo entonces escribir a 3.Si b es positivo entonces escribir b 4.Si c es positivo entonces escribir c 5. Fin del algoritmo DECISION Solución 1.Ingresar a,b,c 2.Si a>0 entonces escribir a 3.Si b>0 entonces escribir b 4.Si c>0 entonces escribir c 5. Fin del algoritmo DECISION

15 Dada una cantidad variable de números enteros (cualesquiera), se desea escribir aquellos que sean positivos y aquellos que no lo sean, aclarando cada caso Dada una cantidad variable de números enteros (cualesquiera), se desea escribir aquellos que sean positivos y aquellos que no lo sean, aclarando cada caso Problema

16 ALGORITMO REPETIR 1.Ingresar cantidad 2.Repetir desde 1 hasta cantidad las siguientes acciones 3. Ingresar a 4. Si a>0 entonces escribir a,’es positivo’ sino escribir a,’es negativo o cero’ 5.Terminar la repetición 6.Fin del algoritmo REPETIR 1.Ingresar cantidad 2.Repetir desde 1 hasta cantidad las siguientes acciones 3. Ingresar a 4. Si a>0 entonces escribir a,’es positivo’ sino escribir a,’es negativo o cero’ 5.Terminar la repetición 6.Fin del algoritmo REPETIR Solución

17 Ejecución de un algoritmo ENTRADA: cantidad  4 {Ingresar cantidad} a  6 6 es positivo {porque 6 es mayor que cero} a  -9 -9 es negativo o cero {porque -9 es menor que cero} a  0 0 es negativo o cero {porque 0 es cero} a  2 2 es positivo {porque 2 es mayor que cero} 1.Ingresar cantidad 2.Repetir desde 1 hasta cantidad las siguientes acciones 3.Ingresar a 4.Si a>0 entonces escribir a, ’ es positivo ’ sino escribir a,’es negativo o cero’ 5.Terminar la repetición 6.Fin del algoritmo REPETIR

18 9/17/2014 Computación - Fac. Ingeniería - UNMDP18 La ejecución de un algoritmo es una secuencia operaciones calculadas a partir de las acciones primitivas del algoritmo. La ejecución de un algoritmo para una entrada específica de datos constituye la resolución de un problema particular. Esos datos son propios del problema. Ejecución de un algoritmo

19 ALGORITMO PROGRAMA Entrada de DATOS Resultados Ciclo elemental

20 Estructura de un Programa Pascal

21 PROGRAM Identificador Encabezamiento (USES Identificador) LABEL Declaración de etiquetas CONST Definición de constantes TYPE Declaración de tipos VAR Declaración de variables PROCEDURE Declaración de procedimientos FUNCTION Declaración de funciones BEGIN Sentencias ejecutables END. Bloque

22 PROGRAM Identificador Encabezamiento ( USES Identificador) LABEL Declaración de etiquetas CONST Definición de constantes TYPE Declaración de tipos VAR Declaración de variables PROCEDURE Declaración de procedimientos FUNCTION Declaración de funciones BEGIN Sentencias ejecutables END. Bloque

23 PROGRAM Identificador ( USES Identificador) LABEL Declaración de etiquetas CONST Definición de constantes TYPE Declaración de tipos VAR Declaración de variables PROCEDURE Declaración de procedimientos FUNCTION Declaración de funciones BEGIN Sentencias ejecutables END. Para trabajar con estas secciones de declaracion y definicion de datos necesitamos conocer los TIPOS DE DATOS

24 Entero (integer) Numerico Real (real) Estandar Simples Carácter (char, y el caso especial string) Lógico (boolean) Definidos por Subrango el programador Enumeración Arreglos (array) Estructurados Registros (record) Conjuntos (set) Archivos (file) Puntero TIPOS DE DATOS Un tipo de dato define el conjunto de valores que pueden ser tomados por una variable y las operaciones que pueden realizarse con ella

25 Datos Simples Estándar (Free Pascal)  Numérico  Lógico (*) (BOOLEAN ) – Dos valores: verdadero (TRUE) / falso (FALSE) (*) Ordinales Entero (*) (INTEGER) [LONGINT/BYTE/SHORTINT/WORD/ CARDINAL/INT64]  Carácter (*) (CHAR) - Un único carácter – Comillas simples Real (REAL) [SINGLE/DOUBLE/EXTENDED]

26 Tipo entero (integer) 9/17/2014 Computación - Fac. Ingeniería - UNMDP26 Tipos Rango numérico Bytes (Bits) Byte 0..255 1 (8) Shortint -128..127 1 (8) Smallint -32768..32767 2(16) Integer -32768..32767 2 (16) Longint -2147483648..2147483647 4 (32) Int64 -9223372036854775808..9223372036854775807 8 (64) Word 0..65535 2 (16) Longword 0..4294967295 4(32) QWord 0.. 18446744073709551615 8(64) Cardinal 0..4294967295 4(32)

27 Tipo real (real) 9/17/2014 Computación - Fac. Ingeniería - UNMDP27 Tipos Rango real Decimales significativos Bytes (Bits) Single 1.5 -45.. 3.4 38 7-8 4 (32) Real -5.0 -324.. 1.7 308 15-16 8 (64) Double 5.0 -324.. 1.7 308 15-16 8 (64) Extended 1.9 -4932.. 1.1 4932 17-18 10 (80) Comp -2 64 +1.. 2 63 -1 15-16 8 (64)

28 9/17/2014 Computación - Fac. Ingeniería - UNMDP28 Sintaxis CONST Identificador de constante=valor de la constante; Ejemplo: CONST Anio=2008; Altura=1.68; Siglo=21; Ejemplo: CONST Anio=2008; Altura=1.68; Siglo=21; Definición de constantes No olvidar

29 9/17/2014 Computación - Fac. Ingeniería - UNMDP29 Declaración de variables Sintaxis: VAR Identificador de variable:identificador de tipo; Ejemplo: VAR dividendo, divisor, cociente,dcm: integer; resultado: real; sigue: boolean; Ejemplo: VAR dividendo, divisor, cociente,dcm: integer; resultado: real; sigue: boolean; No olvidar

30 9/17/2014 Computación - Fac. Ingeniería - UNMDP30 Observaciones La declaración de variables es obligatoria. Cada vez que se declara una variable, se reserva espacio en la memoria para su almacenamiento.

31 Sentencias Ejecutables Estructuradas (o Compuestas) son construcciones compuestas de otras sentencias que deben ser ejecutadas en secuencia (enunciados compuestos), en forma condicional (enunciados condicionales) o en forma reiterada (enunciados de repetición). Estructuradas (o Compuestas) son construcciones compuestas de otras sentencias que deben ser ejecutadas en secuencia (enunciados compuestos), en forma condicional (enunciados condicionales) o en forma reiterada (enunciados de repetición). Simples Ninguna de sus partes puede a su vez considerarse como otra sentencia. Simples Ninguna de sus partes puede a su vez considerarse como otra sentencia.

32 9/17/2014 Computación - Fac. Ingeniería - UNMDP32 Sentencias simples Asignación Lectura (entrada de datos) Escritura (escritura de resultados)

33 Sentencia de asignación La acción es la provocada por el símbolo . Sirve para reemplazar el valor actual de una variable por un nuevo valor especificado por una expresión. Sentencia de asignación La acción es la provocada por el símbolo . Sirve para reemplazar el valor actual de una variable por un nuevo valor especificado por una expresión. Sintaxis: Identificador de variable:=expresión;

34 ACCIONES DEL ALGORTIMO DE EUCLIDES mcd  divisor dividendo  divisor divisor  resto PASCAL mcd := divisor; dividendo:= divisor; divisor := resto ; Ejemplos de asignación

35 Sentencia de entrada La acción que se provoca es la lectura de datos. Se puede usar read o readln. Sentencia de entrada La acción que se provoca es la lectura de datos. Se puede usar read o readln. Sintaxis Read(v1,v2,...,vn); Readln(v1,v2,..vn); Ejemplos: Read(dividendo); Readln(dividendo,divisor) Readln(altura);

36 Sintaxis: write(e1,e2,...,en); writeln(e1,e2,..,en); Sentencia de salida La acción que se provoca es la escritura de resultados. Se puede usar write o writeln Sentencia de salida La acción que se provoca es la escritura de resultados. Se puede usar write o writeln Ejemplos: write(mcd); write(‘Hoy comienza el otoño' ); write('La superficie es =',superficie); writeln('La raiz cuadrada de 34.56 es =',sqrt (34.56)); writeln(‘ab’);

37 program EJEM1; CONST A=5; VAR B:integer; C,D : real; BEGIN D:= 2; write('Ingrese un numero entero:'); readln(B); C:=B*A / D; writeln('El producto de ', A,' por ', B,' dividido’, D, ‘es:', C); END. ¿Qué es una prueba de escritorio? No olvidar

38 Prueba de escritorio: Lote de Prueba: 8 ( para la variable B, la cual es leída ) A = 5DBC Salida 2 8 El producto de 5 por 8 dividido 2 es: 20 D:= 2; write('Ingrese un numero entero:'); readln(B); C:=B*A / D; writeln('El producto de ', A,' por ', B,'dividido’, D, ‘es:', C); 20

39 Prueba de escritorio 9/17/2014 Computación - Fac. Ingeniería - UNMDP39  Una prueba de escritorio es la ejecución de un programa a partir de un ingreso de datos específico.  Se escribe el nombre de todas las variables y expresiones lógicas y se muestra sus valores a medida que se ejecutan las sentencias del programa donde se encuentran, comenzando por la que sigue a BEGIN y terminando con la que precede a END. Esto es, se sigue una secuencia.

40 Prueba de escritorio 9/17/2014 Computación - Fac. Ingeniería - UNMDP40  Si las variables que contienen el resultado muestran las respuestas correctas, se presume que el programa resuelve el problema. Es muy conveniente hacer varias corridas con diversos juegos de datos a fin de verificar que SIEMPRE da la respuesta correcta.  Free Pascal puede hacer una prueba de escritorio con el depurador (o debugger)


Descargar ppt "COMPUTACION 2009 Clase 1. 9/17/2014 Computación - Fac. Ingeniería - UNMDP2 Régimen de cursada  1 clase teórica (2 horas)  1 clase práctica (3 horas)"

Presentaciones similares


Anuncios Google