Programas Simples En Pascal

  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Programas Simples En Pascal as PDF for free.

More details

  • Words: 1,970
  • Pages: 5
EJEMPLOS

PROGRAMAS SIMPLES EN PASCAL Programa en PASCAL

programa

Algoritmo para el cálculo del beneficio (* Entrada: Variables TarifaServicio, CosteUnidad, Instalaciones, MetrosCable

cabecera de programa

declaraciones

instrucciones

cabecera de programa Identificador declaraciones

(

.

PROGRAM lista parametros

);

etiquetas constantes

variables subprogramas

instruccion

Salida: Beneficio obtenido *) 1. Introducir las variables TarifaServicio, CosteUnidad, Instalaciones, MetrosCable

tipos

instrucciones

Objetivo: Calcular el beneficio obtenido por la instalación de un cierto numero de metros de cable en un determinado numero de lugares. Por cada instalacion hay una tarifa minima de servicio y una tarifa adicional por cada pie de cable

BEGIN

2. Calcular Beneficio = Instalaciones * TarifaServicio + CosteUnidad * MetrosCable 3. Visualizar Beneficio

END

; Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -1-

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -2-

Programa

Programa

PROGRAM CalcularBeneficio (input,Output); VAR Instalaciones, {numero de instalaciones} MetrosCable: integer; {metros de cable } TarifaServicio , CosteUnidad, {coste por metro de cable} Beneficio: real; {beneficio obtenido}

PROGRAM Suma (input,Output); VAR X,Y, {dos numeros dados} Suma: integer; {suma de los numeros}

BEGIN writeln(‘Introduzca la tarifa de servicio, el coste por metro de cable, el numero de instalaciones, y los metros de cable usados:’); readln(TarifaServicio, CosteUnidad, Instalaciones, MetrosCable); Beneficio := TarifaServicio * Instalaciones + CosteUnidad * PiesCable; writeln(‘Beneficio obtenido = ‘Beneficio : 7:2) END.

BEGIN

X := 214; Y := 2057; Suma := X + Y; writeln(‘La suma de ‘, X , Y, ‘es ’, Suma) END.

Ejemplo de ejecución La suma de 214 y 2057 es 2271

Ejemplo de ejecución Introduzca la tarifa de servicio, el coste por metro de cable, el numero de instalaciones y los metros de cable usados: 25 2 27 263 Beneficio obtenido = 1211.00

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -3-

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -4-

CONSTANTES

CONSTANTES Cantidades cuyos valores no cambian durante la ejecución del programa Constante entera : cadena de dígitos. Las cadenas enteras negativas deben ir precedidas de un signo menos, en los enteros no negativos el signo más es opcional. Ejemplos: 0 137 -2578 +456 Constantes reales con representación decimal : • Deben incluir un punto decimal • Debe haber al menos un dígito antes del punto decimal y un dígito después de él. • Las constantes reales negativas deben estar precedidas de un signo menos, en los reales no negativos el signo es opcional Ejemplos: 1.233 -0.3675 +457.0 Const. reales con representación exponencial : Constante entera o real en forma decimal, seguida por la letra E, seguida por una constante entera, que se interpreta como exponente de la base 10. Ejemplos: 3.37456E2 0.337456E3 337.456E0 33745.6E-2 Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -5-

Constante de tipo carácter : un único carácter encerrado entre comillas simples. Ejemplos: ‘A’, ‘+’, ‘3’, ‘;’, ‘’’’ Constate de tipo cadena de caracteres: cadena de caracteres encerrada entre comillas simples. Ejemplo: ‘Hola mundo’, ‘M-4435-PK’ Constante de tipo booleano: solo hay dos valores true y false IDENTIFICADORES Nombres dados a los programas, constantes, variables, y otras entidades del programa. • Deben empezar por una letra, seguida de cualquier número de letras o dígitos. • No pueden ser palabras reservadas • No conviene que sean identificadores con significado predefinido. • No se hace distinción entre mayúsculas y minúsculas • Práctica a seguir en este curso: • Las palabras reservadas en mayúsculas • Idenificadores predefinidos en minúsculas • Identificadores definidos por programador, primera letra de cada palabra en mayúsculas Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -6-

CONSTANTES CON NOMBRE En la sección de declaración de constantes se asignan identificadores a las constantes del programa. constantes

CONST

VARIABLES Identificador asociado a una posición de memoria. Se caracterizan por su tipo, y su valor en un momento determinado. variables

identificador

=

constante

VAR

; lista variables

Ejemplo: CONST Pi = 3.1415; MenosPi = -Pi; MiNombre = ‘Isabel’; Anno = 2000; Identificadores de constante predefinidos: • maxint : mayor entero que puede representarse en la computadora • true y false.

lista variables

tipo

:

;

identificador ,

Tipos predefinidos : integer, real, boolean, char text. Ejemplo: VAR NumeroEmp : integer; CodioDept : char ; Residente : boolean ; Horas, Tarifa, Salario : real ; Entada, Salida : text; Deben utilizarse identificadores significativos para las variables

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -7-

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -8-

12 / 4 = 3.0 (-8) DIV 3 = -2 0 MOD 5 = 0

Niveles de prioridad : • Operadores de alta prioridad : * / DIV MOD • Operadores de baja prioridad : + Reglas : • Los operadores de alta prioridad se ejecutan antes que los de baja • Los operadores con igual prioridad se ejecutan de izquierda a derecha • Las expresiones entre paréntesis se evaluan primero • No se permite la aparición de dos operadores seguidos (Atención operadores unarios +,-) Ejemplo: (7 * (10 – 5) MOD 3) * 4 + 9 = 17

Resultado el del argumento real real real real integer real el del argumento real integer

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu -9-

INSTRUCCIÓN DE ASIGNACIÓN instrucción de asignacion identificador

:=

expresion

Como resultado de una instrucción de asignación el valor de la variable cambia al valor de la expresión Ejemplos: X := 2 {X toma el valor 2} Y := 5 {Y toma el valor 5} Suma := X + Y {Suma toma valor 7} X := X+1 { X toma el valor 3} Y := Y+X {Y toma el valor 8} Y := sqrt(Y+1) { Y toma valor 3} codigo := ‘A’ encontrado := false Reglas : • El identificador debe estar declarado en la sección de variables • La expresión debe ser del mismo tipo que la variable o de un tipo convertible • El único tipo convertible en PASCAL es el tipo entero a tipo real • Las variables permanecen indefinidas hasta que se especifica su valor Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu - 11 -

ENTRADA / SALIDA Las instrucciones de entrada/salida permiten mostrar los resultados calculados en un dispositivo de salida e introducir nuevos valores durante la ejecución Instrucciones de salida: • write (lista-salida) : muestra los valores de los objetos en la lista-salida en la línea actual • writeln(lista-salida) : después de mostrar los valores de los objetos en lista-salida en la línea actual salta de línea • writeln : produce un salto de línea en el dispositivo de salida Reglas : • La anchura del campo para valores numéricos depende del compilador • La anchura del campo para caracteres y cadenas es el número de caracteres del valor • Los valores numéricos se justifican a la derecha • Los caracteres y cadenas se justifican a la izquierda • Los valores reales se muestran en notación científica

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu - 12 -

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu - 10 -

2 + 3.0 = 5.0 7.0 / 2 = 3.5 4 DIV 5 = 0 4 MOD 5 = 4

Resultado integer o real integer o real integer o real real integer integer

Tipo parámerto integer o real integer o real integer o real integer o real integer o real real integer o real integer o real integer o real real

Ejemplos: 2+3=5 7 / 2 = 3.5 7 DIV 2 = 3 7 MOD 2 = 1

Operandos integer o real integer o real integer o real integer o real integer (j<>0) integer (j>0)

Descipción Valor absoluto de x Arcotangente de x (en radianes) Coseno de x (en radianes) función exponencial logaritmo neperiano de x redondeo al entero más próximo seno de x (en radianes) cuadrado de x raiz cuadrada de x truncamiento a la parte entera

Operación Suma Resta Multiplicación División real División entera Módulo

Función abs(x) arctan(x) cos(x) exp(x) ln(x) round(x) sin(x) sqr(x) sqrt(x) trunc(x)

Operador + * / DIV MOD

FUNCIONES ARITMÉTICAS PREDEFINIDAS

OPERACIONES ARITMÉTICAS

ENTRADA/SALIDA Ejemplo: Contador := 16; write(Contador , ‘es par’); write(Contador + 1, ‘es impar’); writeln; writeln(‘**********’); writeln; writeln(2.0*Contador, ‘es real’) Ejemplo de ejecución 16 es par 17 es impar ********** 3.200000000E1 es real Descriptores de formato Especifican el formato de la salida • :w -> especifica que el valor que se va a mostrar en un campo consiste en w espacios. Si es demasiado pequeño se agranda para valores numéricos pero para caracteres, booleanos y cadenas sólo se muestran los w caracteres mas a la izquierda.

ENTRADA/SALIDA Instrucciones de entrada • readln(lista-entrada) : lee valores del archivo entrada input y los asigna a las variables de la lista entrada. Después de leer los valores se avanza hasta una nueva línea de entrada • read(lista-entrada) : después de leer los valores no se produce el avance • readln : da por terminada la lista de entrada actual. Ejemplos: • • • •

read(x,y,z) read(x);read(y);read(z) readln(x,y,z) readln(x);readln(y);readln(z)

Posibles entradas: • 234 • 2 3 4 • 23 4

• :w:d -> Solo para valores reales. w es la anchura del campo y d el número de dígitos a mostrar al lado derecho del punto decimal. El valor se redondea o se llena con ceros Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu - 13 -

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu - 14 -

ARCHIVOS Se utilizan para almacenar datos (información) en memoria externa (disco duro o disquetes). Los datos almacenados en un archivo pueden ser leídos múltiples veces por un programa. Tipos de archivos • Archivos de texto : Los datos se almacenan con formato carácter. Se pueden crear con un editor de texto o con un programa. Se pueden leer mediante un programa Se pueden visualizar con un editor de texto. La transformación del formato interno del dato al formato carácter se realiza automáticamente. • Archivos binarios : Los datos se almacenan con formato binario. Sólo se pueden crear con un programa. Se pueden leer mediante un programa No se pueden visualizar con un editor de texto. En caso de hacerlo aparecerán caracteres extraños en lugar de la información almacenada. No es necesaria transformación del formato interno al formato del fichero.

ARCHIVOS DE TEXTO Declaración : variables archivo de tipo text. Ejemplo VAR

ArchEmp : text; DatosSemillas : text;

Asignación del nombre lógico al archivo físico Ejemplo assign(ArchEmp, "Empleados.txt") Esta instrucción es propia de turbo pascal.

Apertura de un archivo de entrada: instrucción que coloca el puntero de lectura al principio del archivo Ejemplo reset(ArchEmp); Lectura de un archivo: instrucción que asigna el valor apuntado por el puntero de lectura a la siguiente variable de la lista y se avanza el puntero hasta el siguiente dato. Cuando se finaliza la lista, si la instrucción es readln se avanza el puntero hasta el final de línea. Ejemplo read(ArchEmp, Nombre, Edad) readln(ArchEmp, Nombre, Edad)

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu - 15 -

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu - 16 -

ARCHIVOS DE TEXTO Apertura de un archivo para escritura: instrucción que crea un archivo vacío y coloca el puntero de escritura al principio del archivo. Cualquier contenido del archivo se destruye. Ejemplo rewrite(ArchEmp); Escritura de un archivo: instrucción que escribe los valores de las expresiones de la lista en el archivo de salida. Si la instrucción es writeln se avanza hasta la siguiente línea del archivo. Ejemplo write(ArchEmp, Nombre, Edad) writeln(ArchEmp, Nombre, Edad) writeln(ArchEmp)

Tema 2. Elementos básicos de la programación imperativa Profesor: Isabel Pita Andreu - 17 -

Related Documents

Simples
April 2020 26
Pascal
November 2019 47
Pascal
October 2019 35
Pascal
November 2019 37