La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sesión 4 Secuencias Básicas Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.

Presentaciones similares


Presentación del tema: "Sesión 4 Secuencias Básicas Prof:Eridan Otto Programación de Computadores Lenguaje Pascal."— Transcripción de la presentación:

1 Sesión 4 Secuencias Básicas Prof:Eridan Otto Programación de Computadores Lenguaje Pascal

2 Sesión 4: Sentencias Básicas y estructura de secuencia Programación de Computadores Lenguaje Pascal TEMARIO Sentencias Básicas Entrada de datos Salida de datos Asignación Estructura de control:Secuencia Acción simple Acciones compuestas Funciones predefinidas

3 Proceso básico de comunicación : La comunicación entre el computador y el usuario se realiza a través, de los dispositivos de entrada y salida (E/S o I/O). Todo programa, naturalmente obtiene datos desde el exterior por medio de dispositivos de entrada y entrega resultados por medio de dispositivos de salida. En esta sección del curso se estudiará la forma de comunicación con la entrada estándar que es el teclado y la salida estándar que es la pantalla. Procedimiento de entrada: Para que el programa capture datos desde el teclado se usa un procedimiento, un pequeño programa incorporado al lenguaje que permite transferir información desde al teclado a la memoria principal del computador (variables). Sintaxis: - Lectura en una línea: read(,,...., ); Como es un procedimiento las variables pasan como argumentos a read, que se encarga de leer el valor de las variables desde teclado y asignarlas. El modo en que el usuario puede teclear los datos de entrada es bastante flexible. Sesión 4: Sentencias Básicas : Entrada de datos Programación de Computadores Lenguaje Pascal

4 Ejemplo: PROGRAM CalcAreaTriangulo; VAR base,altura:INTEGER; BEGIN read(base,altura);....... END. Sesión 4: Sentencias Básicas : Entrada de datos Programación de Computadores Lenguaje Pascal Para el ejemplo, read, espera el ingreso de dos variables, por lo que al ser enteras, interpreta el blanco como separación entre dos números o para el caso más general (lectura de caracteres) la separación se realiza mediante ( o ). Para el ejemplo es válido: >  10 20 Se asigna base con valor 10 y altura con valor 20  10   20

5 Sintaxis: - Lectura con salto línea: readln(,,...., ); Es similar al anterior con la diferencia que espera un después del ingreso de cada grupo de variables. Ejemplo: Sesión 4: Sentencias Básicas: Entrada de datos Programación de Computadores Lenguaje Pascal Ejemplo: PROGRAM CalcAreaTriangulo; VAR base,altura :INTEGER; BEGIN readln(base); readln(altura);....... END. >  10 20  El programa no asignará 20 a altura y segirá Esperando un valor  10   20 Se asigna base con valor 10 y altura con valor 20 Se recomienda usar readln(); pues es más ordenado, puede evitar confusiones al leer caracteres y enteros. Aunque se puede, no se recomienda mezclar variables de diferente tipo, ni en read ni en readln.

6 Procedimiento de entrada: Para que el programa escriba en el dispositivo estándar de salida, que en PASCAL es la pantalla, el valor de variables, constantes y tiras de caracteres explicativas de la salida existe otros dos procedimientos. Sintaxis: - write o writeln(,,...., ); Donde Una variable Una constante definida en el área de constantes Una constante directa, real, entera, carácter Una constante tira o string de caracteres que sigue el formato ‘ ’ Una expresión aritmética. Ejemplo: Sesión 4: Sentencias Básicas : Salida de datos Programación de Computadores Lenguaje Pascal PROGRAM CalcAreaTriangulo; VAR base,altura :INTEGER; BEGIN readln(base); readln(altura); writeln(‘Area del triangulo:’,base*altura/2) END. Antes de un END se pued omitir ; Resultado ejecución  50  30  Area del trángulo:750  Aparece Producto de writeln

7 Esta es la primea instrucción propiamente tal, que se expone, la más básica y muy usada, permite modificar el valor de una variable, tal como se vio en pseudo código. La diferencia es la sintaxis: := ; Donde Una variable Un conjunto de variables y operaciones válidas que se reducen a un valor final compatible con el tipo de variable asignada. Ejemplo: Programa de cálculo del volumen de una esfera con radio entero. Sesión 4: Sentencias Básicas : Asignación Programación de Computadores Lenguaje Pascal PROGRAM CalcVolumenEsfera; pi=3.141516; constante=4/3; VAR radio:INTEGER; resultado:REAL; BEGIN write(‘Ingrese radio de la esfera:’); readln(radio); radio:=radio*radio*radio; {r al cubo} resultado := constante*pi*radio; writeln(‘Volumen de una esfera:’,resultado) END.

8 Formato de los resultados: Tal como está programado el ejemplo anterior, el resultado en pantalla puede ser Sesión 4: Sentencias Básicas : Salida de datos Programación de Computadores Lenguaje Pascal  Ingrese radio de la esfera: 3  Volumen de una esfera : 1.1309457600E+02  Donde el resultado real se despliega en su formato por defecto. Pascal tiene la capacidad de controlar exactamente el modo en el que se escribe el valor de las variables especificando el formato de escritura. La sintaxis corresponde a agregar al argumento de salida una especificación de formato: write o writeln( :n); write o writeln( :n:m>); n corresponde al número de espacios que ocupará el argumento cuando se muestra m se aplica sólo al tipo REAL, y corresponde al número de espacios que ocupará la parte decimal (después del punto). Si se ocupa m, el formato no ocupa notación científica.

9 Ejemplos: Sesión 4: Sentencias Básicas : Salida de datos Programación de Computadores Lenguaje Pascal PROGRAM CalcAreaRectangulo; VAR base,altura,resultado :INTEGER; BEGIN readln(base); readln(altura); resultado:=base*altura; writeln(‘Area del triangulo: ’:40,resultado:6) END. Se desplegará en pantalla: >27 >31 > Area del triangulo: 837 20 espacios Formato 40 Formato 6 con tres caracteres blanco como diferencia de lo ocupado por el entero

10 Ejemplos: Caso programa de cálculo de volúmen de una esfera: writeln(‘Volumen de una esfera:’,resultado:8) > Volumen de una esfera: 1.1+E02 writeln(‘Volumen de una esfera:’,resultado:10) > Volumen de una esfera: 1.113+E02 writeln(‘Volumen de una esfera:’,resultado:12) > Volumen de una esfera: 1.11395+E02 writeln(‘Volumen de una esfera:’,resultado:14) > Volumen de una esfera: 1.1139458+E02 writeln(‘Volumen de una esfera:’,resultado:8:1) > Volumen de una esfera: 113.1 writeln(‘Volumen de una esfera:’,resultado:8:2) > Volumen de una esfera: 113.09 writeln(‘Volumen de una esfera:’,resultado:8:4) > Volumen de una esfera: 113.0946 writeln(‘Volumen de una esfera:’,resultado:10:6) > Volumen de una esfera: 113.094576 Sesión 4: Sentencias Básicas : Salida de datos Programación de Computadores Lenguaje Pascal

11 Sesión 4: Estructura de control:Secuencia Programación de Computadores Lenguaje Pascal Tal como se explicó en la definición de estructuras de control para algoritmos, PASCAL, como la mayoría de los lenguajes procedurales, están basados en la ejecución sentencia por sentencia, instrucción por instrucción, ejecutando acciones en forma secuencial. Acciones simples: se consideran como acciones simples a la realización de una tarea en una sola sentencia, por ejemplo el programa de cálculo de volumen se podría realizar: PROGRAM CalcVolumenEsfera; pi=3.141516; constante=4/3; VAR radio:INTEGER; resultado:REAL; BEGIN write(‘Ingrese radio de la esfera:’); readln(radio); resultado := constante*pi*radio*radio*radio; writeln(‘Volumen de una esfera:’,resultado) END. Cálculo del volumen En una sóla acción

12 Sesión 4: Estructura de control:Secuencia Programación de Computadores Lenguaje Pascal Acciones compuestas: las acciones se pueden estructurar en una secuencia de acciones que resuelven el problema, paso a paso. La ejecución de su conjunto lleva al resultado. Por ejemplo, el mismo problema anterior se puede resolver con más sentencias, sencillas. Esto mejora la claridad del programa. Es más fácil seguirlo. PROGRAM CalcVolumenEsfera; pi=3.141516; constante=4/3; VAR radio,radioAlCubo:INTEGER; resultado:REAL; BEGIN write(‘Ingrese radio de la esfera:’); readln(radio); radioAlCubo:= radio*radio*radio; resultado := constante*pi* radioAlCubo; writeln(‘Volumen de una esfera:’,resultado) END. Cálculo del volumen En una sóla acción

13 Sesión 4: Funciones predefinidas Programación de Computadores Lenguaje Pascal En PASCAL, están definidas (a parte de las palabras reservadas), funciones que toman un valor de una variable o constante de un cierto tipo transformándola, devolviendo un valor, según la definición de la función. Existen varias funciones que permiten realizar cálculos matemáticos u operaciones numéricas frecuentes. Se utilizan en un asignación, sintaxis: y := funcion( ); :variable o constante; Donde y puede ser de un tipo de dato diferente al del argumento de la función. Función Tipo arg. Tipo función Definición Abs(); REAL o INTEGER igual al del argumento Valor absoluto round(); REAL INTEGER Redondea al entero más cercano Sqrt(); REAL o INTEGER REAL Raiz cuadrada Trunc(); REAL INTEGER Elimina la parte decimal del real Sqr(); REAL o INTEGER igual al argumento Argumento al cuadrado Funciones con argumentos ordinales, estas funciones se aplican, especialmenta a los tipos CHAR,a los tipos enumerados y a los tipos subrango. (Aunque también se pueden aplicara a los INTEGER). Función Tipo arg. Tipo función Definición chr(); INTEGER CHAR Devuelve el caractér asociado al cod. ACCII del arg. ord(); CHAR o enum. O sumr. INTEGER Entero asociado con el orden del argumento dentro del conjunto (ej;set caracteres ASCII). Succ(); CHAR o enum. O sumr. INTEGER Entero que corresponde al número del siguiente elemento asociado con el argumento en un tipo ordinal

14 Sesión 4: Ejemplo uso de funciones Una función puede ser parte de una expresión. En tal caso tienen alta precedencia. (Sólo menor a la agrupación por paréntesis). 1.Desarrolle un programa pascal, que dado un caracter, entregue por pantalla su código ASCII equivalente, luego, pide un código ASCII y lo conviera a su letra correspondiente. Despliegue por pantalla los resultados. Programación de Computadores Lenguaje Pascal PROGRAM ConvierteLetras; VAR codigo:INTEGER; letra:CHAR; BEGIN write(‘Ingrese letra o símbolo:’); readln(letra); codigo := ORD(letra); writeln(‘Letra:’,letra:3,’codigo:’:9,codigo) write(‘Ingrese código ASCII:’); readln(codigo); letra := CHR(codigo); writeln(‘Codigo:’,codigo:3,‘Letra:’ :8,letra) END.

15 Sesión 4: Ejemplo uso de funciones Una función puede ser parte de una expresión. En tal caso tienen alta precedencia. (Sólo menor a la agrupación por paréntesis. 2.Desarrolle un programa pascal que calcule la distancia entre los puntos x e y x= (x1,x2) e y = (y1,y2). Los puntos son enteros. Use la fórmula de distancia euclidiana entre dos puntos: Raiz cuadrada ((x1-y1) + (x2-y2)). Formato resultado, notación decimal con 3 decimales. Programación de Computadores Lenguaje Pascal PROGRAM Distancia; VAR x1,x2,y1,y2:INTEGER; distancia:REAL; BEGIN write(‘Ingrese punto x:’); readln(x1,x2); write(‘Ingrese punto y:’); readln(y1,y2); distancia :=sqrt((x1-y1)*(x1-y1) + (x2-y2)*(x2-y2)) writeln(‘Distancia :’, distancia :10:3); END. 22

16 Fin Clase 4


Descargar ppt "Sesión 4 Secuencias Básicas Prof:Eridan Otto Programación de Computadores Lenguaje Pascal."

Presentaciones similares


Anuncios Google