0% encontró este documento útil (0 votos)
162 vistas14 páginas

Guía Completa de Programación en Pascal

Este documento proporciona una introducción a los elementos básicos del lenguaje de programación Pascal, incluyendo constantes, variables, tipos de datos, expresiones, elementos gramaticales, estructura de programas, declaración de constantes y variables. Explica conceptos como la diferencia entre constantes y variables, la necesidad de declarar el tipo de datos, y las partes principales de un programa Pascal como la cabecera, declaraciones y sección de programa.

Cargado por

Manuel Lorenzo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
162 vistas14 páginas

Guía Completa de Programación en Pascal

Este documento proporciona una introducción a los elementos básicos del lenguaje de programación Pascal, incluyendo constantes, variables, tipos de datos, expresiones, elementos gramaticales, estructura de programas, declaración de constantes y variables. Explica conceptos como la diferencia entre constantes y variables, la necesidad de declarar el tipo de datos, y las partes principales de un programa Pascal como la cabecera, declaraciones y sección de programa.

Cargado por

Manuel Lorenzo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD PEDAGÓGICA NACIONAL “FRANCISCO MORAZÁN”

CENTRO UNIVERSITARIO DE EDUCACIÓN A DISTANCIA

RESUMEN PASCAL

ELEMENTOS BASICOS

Un programa en PASCAL es un conjunto de instrucciones o sentencias,


escritas según ciertas reglas, para realizar operaciones sobre entidades de
datos conocidas como constantes, variables, etc.
La constante es una entidad cuyo valor no puede ser modificado durante la
ejecución.
La variable es una entidad cuyo valor puede modificarse durante la ejecución.

EL CONCEPTO DE TIPO DE DATOS


En PASCAL, todo dato está asociado a un TIPO de datos y debe ser declarado
antes de utilizarse. Un TIPO de datos está representado por un identificador y
determina el rango de valores que un elemento de datos puede tomar, así
como las operaciones a que puede ser sometido. Además, el TIPO determina
el espacio en memoria necesario para almacenar cualquiera de los valores
posibles que puede tomar esa entidad.
El compilador de PASCAL proporciona identificadores para algunos tipos que
están predefinidos : números enteros y reales, valores lógicos, caracteres
alfanuméricos, registros, tablas, cadenas de caracteres, conjuntos, ficheros y
punteros a estructuras dinámicas. Pero, además, el PASCAL permite al usuario
crear sus propios tipos definiendo identificadores de su elección para
representar rangos de valores. Estos también llevan asociados un conjunto de
operadores admisibles y unas necesidades determinadas de espacio en
memoria.
El tipo de una constante es el tipo de su valor correspondiente. El tipo de una
variable es el tipo establecido cuando se declaró y no puede modificarse en
general.

En PASCAL también existen las EXPRESIONES que, igualmente,


corresponden a algún tipo siempre. Una expresión representa al valor
resultante de operar alguna combinación de constantes, variables, funciones,
con ciertos operadores. Se pueden usar operadores aritméticos, relacionales,
lógicos, de manejo de cadenas de caracteres, y de conjuntos. Las operaciones
aritméticas producen valores enteros o reales. Las operaciones relacionales y
lógicas producen valores booleanos. Las operaciones entre conjuntos permiten
obtener la unión, la intersección y las diferencias entre conjuntos.
Resumiendo y hablando en términos generales, se puede enunciar el principio
básico de que cada constante, variable, expresión es de un tipo determinado.

Realizado por la Ing. María Luisa Cerrato.


Como en los equipos de proceso de datos sólo hay un tipo de escritura, la
norma que se adopta para hacer distinciones consiste en manifestar
explícitamente el tipo asociado a cada entidad en sentencias de declaración y
hacer que esta declaración preceda en el texto a la utilización de las
constantes, variables.

ELEMENTOS GRAMATICALES
Las sentencias de un programa en PASCAL se forman con elementos que
pueden ser:

 símbolos individuales, tales como los operadores aritméticos.


 palabras con un significado especial en PASCAL y palabras definidas
por el usuario.
Los elementos gramaticales se construyen con caracteres. Un carácter es
cualquier elemento de la tabla de codificación ASCII, Algunos caracteres son
SIMBOLOS ESPECIALES que se usan en PASCAL como delimitadores de
sentencias, como operadores y como elementos sintácticos de lenguaje.
Ejemplo: " ; " , " > ", " < > " , " = " .

Símbolos especiales

Se usan para representar delimitadores, operadores y otros elementos


sintácticos. Cuando un símbolo está formado por más de un carácter, éstos
deben escribirse seguidos sin espacios en blanco de separación.

Nombre símbolo
Sumar signo +
Restar signo -
multiplicar *
dividir /
operador de asignación :=
punto .
punto y coma ;
dos puntos :
apostrofe „
igual signo =
menor que <
menor o igual que <=
mayor que >
mayor o igual que >=
paréntesis ()
corchetes
distinto <>

Palabras reservadas

Realizado por la Ing. María Luisa Cerrato.


En la definición del lenguaje PASCAL, algunas palabras están reservadas. Se
usan como nombres de sentencia, de tipos de datos y de operadores.
Las palabras reservadas sólo se pueden usar, dentro de un programa, en el
contexto para el que han sido definidas. No se pueden redefinir para usarlas
como identificadores: AND, END, THEN, BEGIN, FOR, CASE, FUNCTION, OR
TYPE, CONST GOTO, UNTIL DIV, IF DO, WHILE, ELSE MOD, REPEAT.

Reglas sintácticas

1. El punto y coma ( ; ) y el punto ( . ) son DELIMITADORES en PASCAL.


El punto y coma separa sentencias consecutivas. También se usa para
terminar el encabezamiento del programa y las declaraciones de los
datos. No es necesario escribir punto y coma después de la palabra
BEGIN ni antes de la palabra END porque BEGIN y END no son
sentencias. El punto indica el final del programa.

2. Las palabras BEGIN y END también son delimitadores, no son


sentencias. Se usan para separar las partes funcionales de un
programa. Con ellas se indica el principio y el final de la sección
ejecutable. También sirven para delimitar una sentencia compuesta.
Cada BEGIN debe estar asociado con un END, excepto en dos casos :
la sentencia CASE y la declaración de RECORD.

3. El PASCAL permite formato libre en la escritura del texto que compone


el programa. Se pueden colocar las sentencias en cualquier lugar de una
línea, escribir una sentencia en más de una línea y colocar varias
sentencias en una misma línea. Pero no se puede dividir un nombre y un
número entre varias líneas o con un espacio en blanco.
4. Un programa puede contener comentarios en cualquier lugar. Los
comentarios se delimitan encerrándolos entre llaves ( { } ). También es
posible comenzar un comentario con " ( * " y acabarlo con " *) ".

Variables y constantes

Como su nombre lo indica las variables pueden cambiar a lo largo de la


ejecución de un programa, en cambio las constantes serán valores fijos durante
todo el proceso. Ejemplo: cuando se suman dos números que serán
introducidos por el usuario del programa, este puede introducir dos valores
cualesquiera y no sería nada útil restringirlo a dos valores predefinidos, así que
dejamos que use los valores que él necesite sumar, ahora si el programa va a
utilizar el valor PI con el valor 3.1415926 constante, de tal forma que PI no
pueda cambiar de valor, se puede usar una variable tipo constante.
Las variables y constantes pueden ser de todos los tipos: numéricos tanto
enteros como reales, caracteres, etc.

Realizado por la Ing. María Luisa Cerrato.


Estructura de los programas
El lenguaje utilizado en turbo pascal es estructurado, lo que significa que cada
programa requiere una forma específica de escritura para que sea atendido por
el compilador.
Todo programa cuenta con algunas partes o módulos, los cuales son:

Cabecera
Declaraciones
Programa

La cabecera del programa únicamente lleva el nombre del programa. En la


sección de declaraciones se le indica al compilador todos los identificadores y
unidades que se utilizarán durante la ejecución del programa. En la sección del
programa se escribe el código de instrucciones que se llevarán a cabo.

Sentencia Program

La sentencia del programa


Consta de tres partes: la palabra reservada Program, a continuación un
identificador utilizado como el nombre del programa y al final punto y coma “;”.
Ejemplo:

PROGRAM suma_de_dos_numeros;

Esta declaración es siempre el primer línea en cualquier programa de Turbo


Pascal.

Declaración de unidades

Las unidades son módulos independientes del programa que, aunque no son
ejecutables por si mismos, pueden ser utilizados por el programa principal sin
necesidad de reescribir el código que contienen. Para la utilización de estos
“subprogramas” es necesaria su declaración.

La palabra reservada USES cumple el propósito de declarar las unidades en el


formato siguiente:

USES crt,dos;

Esta línea declara y habilita para su uso a la unidad crt y a la unidad dos.
Cada unidad que se declara deberá estar separada de la siguiente por una
coma. Al final todas las unidades declaradas se deberá colocar un punto y
coma “;”.

Realizado por la Ing. María Luisa Cerrato.


Declaración de constantes y variables

Para declarar las constantes se utiliza la palabra reservada CONST seguida de


un identificador al que se le dará un valor determinado, un signo de igual “=”, el
valor que recibirá el identificador y al final un punto y coma “;”. Ejemplo:

CONST pi=3.1415926;
De esta forma el identificador pi recibirá el valor de 3.1415926 y no será
posible cambiarlo en el transcurso del programa.
Es posible declarar varias constantes sucesivamente, puede ser una por
renglón o varias en un solo renglón. Cuando se hace esto, la palabra CONST
solo se pone una sola vez como cabecera y a continuación todas las
constantes por definir.
Ejemplo:
CONST
PI = 3.1415926;
Nombre = 'Juan Gutiérrez';
Unidad = 1;

Otra forma de escribirlo es así:

CONST PI = 3.1415926; Nombre = 'Juan Gutiérrez'; Unidad = 1;

La declaración de variables se lleva a cabo de la misma forma, sólo que en


lugar de la palabra CONST, se utiliza la palabra VAR, y en lugar de “=valor;”,
se utiliza: tipo, sustituyendo “tipo” por alguna clase válida de datos.

Ejemplo:

VAR Num_entero : Integer;


Nombre : String;

El programa principal inicia con la palabra reservada BEGIN y termina con la


palabra END. Esta última con punto al final.
Cada línea de código, enunciado, sentencia o instrucción completa que se
escribe deberá terminar con punto y coma “;”.
Sólo se omitirá el punto y coma cuando se utiliza la palabra reservada ELSE.
Aunque puede también omitirse si la siguiente expresión es END o UNTIL

Ya conociendo la estructura es posible escribir un primer programa:

Realizado por la Ing. María Luisa Cerrato.


PROGRAM Primera_Prueba;
VAR
Entero : Integer;
CONST
Mensaje = 'Introduce un valor entero: ';
Respuesta = 'El valor es: ';
BEGIN
Write(Mensaje);
{Escribe en pantalla el mensaje definido como constante}
ReadLn(Entero);
{Lee un valor de teclado y lo almacena en la variable Entero}
WriteLn(Respuesta, Entero);
{Escribe en pantalla el contenido de Respuesta y el valor que se ingresó de
teclado}
END.

Asignación o igualación

La operación de asignación es una de la más utilizadas ya que permite darle un


valor determinado a las variables que se declaran en el programa.
El símbolo utilizado para la operación es los dos puntos seguidos por un signo
de igual := , a la izquierda de dicho símbolo se coloca el identificador al que se
le asignará un nuevo valor y a la derecha se colocará un identificador o algún
valor directo que se almacenará en el primer identificador. Ejemplo:

Nombre := 'Juan Pérez';


{Nombre guardará la cadena "Juan Pérez"}
Resta := Numero1 - Numero2;
{Resta gurdará el resultado de la resta de Numero2 a Numero1}
Area := (Base*Altura)/2;
{Obtiene el área de un triangulo y la guarda en el identificador Área}

Es indispensable para todo programa que cuente con la capacidad de manejar


entradas y salidas de información, ya que sin estas capacidades sería un
programa inútil.

Salida de datos a la pantalla

Las instrucciones que permiten mostrar datos en la pantalla de la computadora


son: write y writeln, aunque ya se utilizó en los programas anteriores, aquí se
explicarán

La sintaxis de los procedimientos es la siguiente:

Write (indentificadores);
WriteLn (indentificadores);

Realizado por la Ing. María Luisa Cerrato.


Donde los identificadores son aquellos que contienen la información que se
desea mandar a la pantalla. Es posible utilizar varios de ellos por cada
instrucción write o writeln, únicamente se separan unos de otros por comas “,”,
ejemplo:

Write(nombre,apeliidop, apellidom)

Esta linea de código desplegará consecutivamente los contenidos de los


identificadores Nombre, ApellidoP y ApellidoM. En caso de que la variable
Nombre almacenara el valor 'Rodrigo ', la variable ApellidoP 'González ' y la
variable ApellidoM 'García', el resultado en pantalla sería:

Rodrigo González García

Se puede obtener el mismo resultado si se utiliza la siguiente estructura:

Write (Nombre);
Write (ApellidoP);
Write (ApellidoM);
Si en lugar de utilizar la instrucción Write se hace uso de WriteLn con la
misma sintaxis del ejemplo anterior:
WriteLn (Nombre);
WriteLn (ApellidoP);
WriteLn (ApellidoM);

Lo que se obtendría es:

Rodrigo
González
García

De este ejemplo es posible concluir que la diferencia entre las instrucciones


write y writeln, es que la última imprime el contenido de los identificadores y
cambia el cursor al siguiente renglón de la pantalla y la primera sólo escribe el
contenido y deja el cursor al final del dato escrito.

Entrada de datos desde el teclado

Las instrucciones estándar para obtener datos desde el teclado son read y
readln. La sintaxis de estas instrucciones es muy parecida a la de write y
writeln. Ejemplo:

Read(identificador)

El identificador puede ser cualquier variable definida previamente, no puede ser


una constante. Puede ser también un conjunto de variables, separadas entre
comas, en este caso se guardará el primer valor dado antes del (enter)en el

Realizado por la Ing. María Luisa Cerrato.


primer identificador proporcionado, luego del segundo y así sucesivamente
hasta el último identificador.

Tipos de datos

Enteros
En esta categoría Pascal cuenta con cinco tipos diferentes. Cada uno abarca
un rango específico de valores y utiliza una diferente cantidad de memoria
dependiendo de ese rango. Naturalmente el trabajr con rangos menores ofrece
mayor velocidad y menor espacio en memoria, pero si se utiliza enteros largos
se cuenta con mayor precisión.

Tipos de enteros:

Tipo Rango de valores que acepta


Integer -32,768 a 32,767
Word 0 a 65535
ShortInt -128 a 127
Byte 0 a 255
LongInt -2,147,483,648 a 2,147,483,648

Al utilizar los tipos enteros es posible representar en el programa un número en


formato hexadecimal, para hacer esto solo se le antepone el símbolo "$" al
valor hexadecimal, al momento de visualizar dicho valor, o utilizarlo en alguna
operación será como decimal. Por ejemplo:

Cantidad:=$10;

El valor que se guarda en “cantidad” es 16

Tipos reales
Los números reales son aquellos que cuentan con una parte decimal.

Tipo caracter
Los caracteres son cada uno de los símbolos que forman el código ASCII, el
tipo estándar de Pascal para estos datos es char. Los caracteres se especifican
entre apostrofes.

'a' 'B' '2' '#'

El tipo char es un tipo ordinal de pascal, esto quiere decir que sus elementos
validos siguen una secuencia ordenada de valores individuales. La secuencia
de caracteres para este tipo corresponde al número del código ASCII, del 0 al
255.
Es posible acceder a cada uno de los caracteres utilizando un signo de # antes
de su valor correspondiente, por ejemplo la letra A puede ser representada

Realizado por la Ing. María Luisa Cerrato.


como #65, el retorno de carro o enter se representa como #13 y así cualquier
carácter.

Tipo cadena

Las cadenas son secuencias de caracteres o arreglos que tienen una longitud
máxima de 255 caracteres. Se definen entre apostrofes. El tipo Pascal para las
cadenas es string

PROGRAM Cadena;

VAR
Nombre : String;

BEGIN
Nombre := 'Ernesto Chávez';
WriteLn (Nombre);
END.
Este programa guarda la cadena „Ernesto Chavez‟ en la variable definida como
tipo string y la visualiza en la pantalla por medio de la instrucción writeln.

Es posible definir un tamaño más pequeño utilizando el siguiente formato:

Variable: string[Tamaño];

Es posible acceder a un solo carácter de una cadena utilizando


inmediatamente después del nombre de la misma posición del carácter
encerrada entre corchetes. Por ejemplo:
PROGRAM Cadena01;

VAR
Nombre : String[30];
{Permite un máximo de 30 caracteres en la variable}

BEGIN
Nombre := 'Ernesto Chávez';
WriteLn (Nombre[5]);
{Visualiza el 5to caracter de la cadena}
END.

Tipos lógicos

Este tipo de datos tienen la peculiaridad de que sólo pueden tomar dos tipos de
datos: verdadero o falso, el verdadero puede ser representado por su nombre
en inglés True y el falso por false; también se representan por 1 y por 0

Realizado por la Ing. María Luisa Cerrato.


respectivamente. El tipo está definido como boolean.

Sentencias de control en Pascal

Además de las sentencias simples, que son ejecutadas en secuencia,


existen sentencias de control que permiten modificar el flujo del programa
introduciendo ciclos y condicionales.

Una secuencia de control incluye otra sentencia dentro de sí. Por ejemplo, una
sentencia condicional incluye la sentencia que puede o no ejecutarse
dependiendo de una condición.

Para poner más de una sentencia dentro de una sentencia de control, es


necesario encerrarlas entre los delimitadores begin y end.

Al escribir las sentencias que van dentro de una sentencia de control, se


acostumbra a comenzar el renglón varias columnas más adelante. Esto se
llama indentación, y es crucial para entender programas complejos. Para
indentar, lo típico es usar cuatro espacios. Todos los ejemplos en esta sección
están debidamente indentados.

Condicional if-then

La sentencia if-then (en español: «si-entonces») ejecuta


instrucciones sólo si se cumple una condición. Si la
condición es falsa, no se hace nada.

La sintaxis es la siguiente:

if {condición} then

{sentencia en el caso verdadero};

Por ejemplo, el siguiente código felicita a alguien que aprobó la asignatura:

Read(nota);
if nota >= 55 then
WriteLn('Felicitaciones');

Condicional if-then-else

Realizado por la Ing. María Luisa Cerrato.


La sentencia if-then-else («si-entonces-o-si-no»)
decide qué instrucciones ejecutar dependiendo si una
condición es verdadera o falsa. La sintaxis es la
siguiente:

if {condición} then

{sentencia en el caso verdadero}

else
{sentencia en el caso falso};

Por ejemplo, el siguiente código permite obtener cuántos días tiene un año
dado:

Read(year);
if (year mod 4 = 0) and ((year mod 100 <> 0) or
(year mod 400 = 0)) then
WriteLn(year, ' tiene ', 366, ' dias')
else
WriteLn(year, ' tiene ', 365, ' dias');

Condicional case-of

La sentencia case-of («caso-de») decide qué instrucciones ejecutar


dependiendo del valor de una expresión. Es una manera abreviada de escribir
varios ifs uno después del otro.

La sintaxis es la siguiente:

case {expresión} do
{valor1}:
{sentencia};
{valor2}:
{sentencia};
...
end

Por ejemplo, el siguiente código indica si un número es par o no:

Read(n);
case n mod 2 of
0:
WriteLn('par');
1:

Realizado por la Ing. María Luisa Cerrato.


WriteLn('impar');
end;

En un mismo caso es posible poner varios valores separados por comas.


Además, se puede especificar rangos de valores separados por...

También es posible incluir una cláusula else para cubrir el resto de los casos.

Ciclo while

El ciclo while («mientras») ejecuta una secuencia de


instrucciones mientras una condición sea verdadera.

La condición es evaluada antes de cada iteración. Si


la condición es inicialmente falsa, el ciclo no se
ejecutará ninguna vez.

La sintaxis es la siguiente:

while {condición} do
{sentencia};

Por ejemplo, el siguiente código muestra por pantalla la secuencia de


Collatz del número ingresado por el usuario:

Read(n);
while n > 1 do
begin
if n mod 2 = 0 then
n := n div 2
else
n := 3 * n + 1;
WriteLn(n);
end;

En este ejemplo, hay más de una sentencia en el cuerpo


del while, por lo que se utiliza begin y end para
delimitarlas.

Ciclo repeat-until

El ciclo repeat-until («repetir-hasta») ejecuta una


secuencia de instrucciones hasta que se cumpla la
condición de término.

Realizado por la Ing. María Luisa Cerrato.


La condición es evaluada después de cada iteración, por lo que el ciclo siempre
es ejecutado por lo menos una vez.

La sintaxis es la siguiente:

repeat
{sentencia};
until {condición};

A diferencia de las demás sentencias, no es necesario usar begin y end al


poner más de una instrucción dentro del repeat.

Ciclo for

El ciclo for («para») ejecuta una secuencia de instrucciones un número


predeterminado de veces. Un ciclo for utiliza una variable de control que toma
diferentes valores en cada iteración.

La sintaxis es la siguiente:

for {variable} := {valor inicial} to {valor final} do


{sentencia};

Por ejemplo, el siguiente código suma los números del uno al diez:

suma := 0;
for i := 1 to 10 do
suma := suma + i;

En el ejemplo, el ciclo se ejecuta diez veces. Después de cada iteración, el


valor de i es incrementado en 1.

Si el valor final es menor al valor inicial, el ciclo nunca es ejecutado.

Realizado por la Ing. María Luisa Cerrato.


Para hacer que la variable de control tome valores de mayor a menor, hay que
reemplazar to por downto. Por ejemplo, el siguiente código imprime una cuenta
regresiva:

for s := 20 downto 1 do
WriteLn(s);
WriteLn('¡Feliz año nuevo!');

Realizado por la Ing. María Luisa Cerrato.

También podría gustarte