Departamento de Informtica Universidad Tcnica Federico Santa Mara

  • Slides: 14
Download presentation
Departamento de Informática Universidad Técnica Federico Santa María Programación de Computadores (IWI-131) Tema 5:

Departamento de Informática Universidad Técnica Federico Santa María Programación de Computadores (IWI-131) Tema 5: Sentencias Básicas Luis Pizarro Q. Luis. Pizarro@inf. utfsm. cl www. labmc. inf. utfsm. cl/~lpizarro/IWI-131

1. Estructura de un programa Pascal PROGRAM nombre_del_programa; CONST {aquí se declaran las costantes}

1. Estructura de un programa Pascal PROGRAM nombre_del_programa; CONST {aquí se declaran las costantes} TYPE {aquí se declaran las variables tipo} PROCEDURE (FUNCTION) {aquí se declaran procedimientos y/o funciones} VAR {aquí se declaran las variables} BEGIN {aquí se escribe el cuerpo del programa} END. Luis Pizarro Q. © 2003 2

2. Cuerpo de un Programa n El cuerpo de un programa se compone de

2. Cuerpo de un Programa n El cuerpo de un programa se compone de 3 etapas: 1. 2. 3. Entrada: Ingreso de Datos Procesamiento. Salida: Entrega de Resultados Luis Pizarro Q. © 2003 3

2. Cuerpo de un Programa BEGIN {Entrada} {Procesamiento} {Salida} END. Luis Pizarro Q. ©

2. Cuerpo de un Programa BEGIN {Entrada} {Procesamiento} {Salida} END. Luis Pizarro Q. © 2003 4

2. Cuerpo de un Programa n Entrada: 1) READ(lista_de_variables); – Se leen las variables

2. Cuerpo de un Programa n Entrada: 1) READ(lista_de_variables); – Se leen las variables con espacios en blanco entre ellas, dejando el cursor en la misma línea. 2) READLN(lista_de_variables); – Se leen las variables con espacios en blanco entre ellas, dejando el cursor en la siguiente línea. Luis Pizarro Q. © 2003 5

Ejemplos de Entrada: Sentencias Datos Asignación READ(a); READ(b, c, d); READ(e, f); 32 3

Ejemplos de Entrada: Sentencias Datos Asignación READ(a); READ(b, c, d); READ(e, f); 32 3 4 60 24 72 15 a: =32 b: =3, c: =4, d: =60 e: =24, f: =72 READLN(a); READLN(b, c, d); READLN(e, f); 32 3 4 60 24 72 15 a: =32 b: =60, c: =24, d: =72 e, f sin valores Luis Pizarro Q. © 2003 6

2. Cuerpo de un Programa n Salida: 1) WRITE(lista_de_variables); – Se escriben las variables

2. Cuerpo de un Programa n Salida: 1) WRITE(lista_de_variables); – Se escriben las variables sin espacios en blanco entre ellas, dejando el cursor en la misma línea. 2) WRITELN(lista_de_variables); – Se escriben las variables sin espacios en blanco entre ellas, dejando el cursor en la siguiente línea. Luis Pizarro Q. © 2003 7

Ejemplos de Salida: Sentencias Salidas x: =‘Luis’; y: =‘amigo’; WRITELN(‘Hola ’, x); WRITE(‘ cómo

Ejemplos de Salida: Sentencias Salidas x: =‘Luis’; y: =‘amigo’; WRITELN(‘Hola ’, x); WRITE(‘ cómo estás ’); WRITE(y); Hola Luis cómo estás amigo x: =‘Luis’; Hola Luis, cómo estás y: =‘amigo’; amigo WRITE(‘Hola ’, x); WRITELN(‘ cómo estás ’); WRITE(y); Luis Pizarro Q. © 2003 8

3. Funciones Predefinidas n Pascal provee un conjunto de funciones predefinidas, entre ellas: •

3. Funciones Predefinidas n Pascal provee un conjunto de funciones predefinidas, entre ellas: • ABS(x): • ARCTAN(x) • COS(x) • SIN(x) • EXP(x) • LN(x) • SQRT(x) • ROUND(x) • TRUNC(x) • ORD(x) • PRED(x) • SUCC(x) devuelve el valor absoluto de x devuelve el arcotangente de x devuelve el coseno de x devuelve el valor exponencial de x devuelve el logaritmo natural de x devuelve el cuadrado de x devuelve la raíz cuadrada de x devuelve el entero más próximo a x devuelve la parte entera de x (truncamiento) devuelve la posición de x devuelve el elemento que precede a x devuelve el elemento que sucede a x Luis Pizarro Q. © 2003 9

Ejemplo 1 n Realizar un programa que calcule la superficie y el volumen de

Ejemplo 1 n Realizar un programa que calcule la superficie y el volumen de un cilindro. PROGRAM Cilindro; CONST pi = 3. 14159; VAR radio, altura, sup, vol: REAL; BEGIN WRITE (‘Ingrese radio: ’); READLN(radio); WRITE (‘Ingrese altura: ’); READLN(altura); sup: =2*pi*radio*altura + 2*pi*SQR(radio); vol: =pi*SQR(radio)*altura; WRITELN(‘La superficie es: ’, sup: 8: 2); WRITELN(‘El volumen es: ’, vol: 8: 2) Entrada Procesamiento Salida END. Luis Pizarro Q. © 2003 10

Ejemplo 2 n Un vehículo se mueve con velocidad inicial vi [m/s] y una

Ejemplo 2 n Un vehículo se mueve con velocidad inicial vi [m/s] y una aceleración constante a [m/s 2]. Calcule la velocidad instantánea al cabo de t [s] y la velocidad media durante los primeros t [s] del recorrido. Velocidad instantánea = velocidad inicial + aceleración * tiempo Velocidad media = (velocidad inicial + velocidad final) / 2 PROGRAM Movimiento_linealmente_acelerado; VAR vi, a, vinst, vmed, t: REAL; BEGIN WRITE (‘Ingrese velocidad inicial: ’); READLN(vi); WRITE (‘Ingrese aceleración: ’); READLN(a); WRITE (‘Ingrese tiempo: ’); READLN(t); vinst : = vi + a * t; vmed : = (vi + vinst) / 2; WRITELN(‘La velocidad instantánea a los ’, t, ‘ segundos es: ’, vinst); WRITELN(‘La velocidad media a los ’, t, ‘ segundos es: ’, vmed); END. Luis Pizarro Q. © 2003 11

Ejemplo 3 n Evalue las expresiones indicadas en el cuerpo del programa e indique

Ejemplo 3 n Evalue las expresiones indicadas en el cuerpo del programa e indique los valores finales que toman las variables: PROGRAM Evaluaciones_varias; TYPE dias = (lun, mar, mie, jue, vie, sab, dom); juegos = (naipes, ajedrez, damas, domino); VAR a, b: dias; c, d: juegos; y, z: BOOLEAN; BEGIN a : = vie; b : = mar; c : = ajedrez; d : = damas; z : = ORD(PRED(a)) = SUCC(ORD(c)+1); y : = (SUCC(jue) >= PRED(b)) AND NOT (SUCC(d) <> naipes); END. Luis Pizarro Q. © 2003 12

Ejercicio de Programación n Un atleta comienza y termina una carrera en el mismo

Ejercicio de Programación n Un atleta comienza y termina una carrera en el mismo lugar. El par ordenado (x, y) representa la ubicación de un control de ruta. Conocidas las posiciones de los 5 controles, calcule la distancia total recorrida por el atleta y la superficie que abarca el trazado de la ruta. Luis Pizarro Q. © 2003 13

Departamento de Informática Universidad Técnica Federico Santa María Programación de Computadores (IWI-131) Tema 5:

Departamento de Informática Universidad Técnica Federico Santa María Programación de Computadores (IWI-131) Tema 5: Sentencias Básicas Luis Pizarro Q. Luis. Pizarro@inf. utfsm. cl www. labmc. inf. utfsm. cl/~lpizarro/IWI-131