Pascal como lenguaje de programación
pascal es un lenguaje creado por el profesor
suizo Niklaus
Wirth entre los años 1968 y 1969 y publicado en 1970. Su
objetivo era crear un lenguaje que facilitara el aprendizaje de programación a
sus alumnos, utilizando la programación estructurada y
estructuración de datos. Sin embargo, con el tiempo su utilización excedió el
ámbito académico para convertirse en una herramienta para la creación de
aplicaciones de todo tipo.
Pascal se caracteriza por ser un lenguaje de programación
estructurado fuertemente
tipado. Esto implica que:
·
El código está dividido en porciones fácilmente
legibles llamadas funciones o procedimientos. De esta
forma Pascal facilita la utilización de la programación
estructurada en oposición al antiguo estilo de programación
monolítica.
·
El tipo de dato de todas las variables
debe ser declarado previamente para que su uso quede habilitado.
Historia
Pascal, es llamado así en honor del matemático y filósofo
francés Blaise
Pascal, fue desarrollado por Niklaus Wirth.
Antes de su trabajo en Pascal, Wirth había desarrollado Euler y ALGOL W y más tarde pasó a
desarrollar los lenguajes Modula-2 y Oberon, al estilo de
Pascal.
Inicialmente, Pascal era en gran parte, pero no
exclusivamente, destinado a enseñar a los estudiantes la programación estructurada. Una
generación de estudiantes usa Pascal como lenguaje de introducción de cursos de
graduación. Las variantes de Pascal también se han usado para todo, desde
proyectos de investigación a juegos de PC y sistemas
embebidos. Existen nuevos compiladores de Pascal que son ampliamente
utilizados.
Pascal fue el lenguaje primario de alto nivel utilizado para
el desarrollo en el Apple Lisa,
y en los primeros años del Macintosh.
Algunas partes del sistema operativo original del Macintosh se
traducen a mano al lenguaje ensamblador del Motorola 68000 de sus fuentes Pascal. El
sistema de composición tipográfica TeX de Donald E. Knuth fue escrito en WEB,
el sistema de programación literaria original,
basado en DEC PDP-10 Pascal,
mientras que aplicaciones como Total
Commander, Skype y
Macromedia Captivate fueron escritos en Delphi (Object
Pascal).
Object Pascal (Embarcadero Delphi) todavía se utiliza
para el desarrollo de aplicaciones Windows, pero también tiene la capacidad de
compilación cruzada del mismo código para Mac, iOS y Android. Otra versión multiplataforma llamado Free Pascal, con el IDE Lazarus, es popular entre
los usuarios de Linux, ya que también ofrece desarrollo escribe una vez,
compila para todos (write once, compile anywhere). CodeTyphon es una
distribución de Lazarus con más paquetes preinstalados y compiladores cruzados.
Estructura de un programa pascal
1. Todo programa en pascal comienza con la palabra
program y el nombre del programa (max. 8 caracteres, sin espacios en blanco)
seguido de un punto y coma. Ejemplo:
program nomina;
2. Es conveniente
utilizar la cláusula uses crt para utilizar las propiedades de la pantalla.
Ejemplo:
uses crt;
3. A continuación
definimos las constantes: son aquellas que tienen un valor que no cambiará en
todo el programa. Se comienza con la palabra const. Ejemplo:
const
línea = 66;
max = 100;
min = 0;
n = 30;
línea = 66;
max = 100;
min = 0;
n = 30;
4. A continuación
definimos nuestros tipos de datos. Hay dos tipos de datos en pascal: los tipos
de datos estándares, es decir que el compilador pascal los reconoce
automáticamente, como son: integer, real, boolean, char, byte. Estos tipos de
datos no son necesarios definirlos aquí, sino directamente se asignan a las
variables. Los tipos de datos que hay que colocar aquí son
aquellos definidos por el usuario. Ellos son: los tipos string (cadenas de
caracteres), los arreglos (vectores y matrices), los registros, los archivos y
los apuntadores. Se comienza con la palabra type. Ejemplo:
type
nom: string[40]; —> nom es un tipo de datos string de 40 caracteres.
alum: array[1..5] of integer; —> alum es un vector de cinco elementos tipo entero
nota1 : array[1..30,1..4] of real;—> nota1 es una matriz de 30 filas y cuatro columnas
nom: string[40]; —> nom es un tipo de datos string de 40 caracteres.
alum: array[1..5] of integer; —> alum es un vector de cinco elementos tipo entero
nota1 : array[1..30,1..4] of real;—> nota1 es una matriz de 30 filas y cuatro columnas
emp : record —> emp es un registro formado por tres
campos:
ci: string[9]; ci, nya y sueldob.
nya : string[40];
sueldob : real;
end;
ci: string[9]; ci, nya y sueldob.
nya : string[40];
sueldob : real;
end;
emplea: file of emp; —> emplea es un archivo conformado
por registros
tipo emp
tipo emp
5. Posteriormente
definimos las variables, asociadas a los tipos de datos que hemos definido en
type, o aquellas que son de tipo estandar: enteras (integer), reales (real),
booleanas. etc.
Se comienza con la palabra var. Ejemplo:
Se comienza con la palabra var. Ejemplo:
var
i, j, k: integer;
promedio: real;
nombre: nom; —> Obsérvese la relación de la variable con el tipo de datos
alumno: alum; definido en el type
notas: nota1;
empleado: emplea;
regemp: emp;
i, j, k: integer;
promedio: real;
nombre: nom; —> Obsérvese la relación de la variable con el tipo de datos
alumno: alum; definido en el type
notas: nota1;
empleado: emplea;
regemp: emp;
Recuérdese que en el programa trabajaremos con las
variables. Ejemplo:
read(nombre);
read(nombre);
6. Si tenemos
subprogramas, procedimientos o funciones se definen en este lugar. Comienzan
con la palabra procedure y el nombre del procedimiento y termina con la palabra
end y punto y coma. Ejemplo:
procedure listar;
const
……
type
……
var
……
begin
……
end;
const
……
type
……
var
……
begin
……
end;
Un procedimiento tiene la misma estructura del programa
principal. Las variables que se utilizan en el procedimiento sólo sirven para
ser utilizadas en el procedimiento (variables locales), mientras que las que
hemos definido en el programa principal son globales, es decir pueden utilizarse
en cualquier parte del programa.
7. Por último,
escribimos el programa principal, el cual comienza con la palabra begin y
termina con la palabra end seguida de un punto. Dentro del begin y el end final
se encuentran todas las instrucciones y llamadas a los procedimientos que hemos
definido anteriormente. Ejemplo:
begin
write(‘Escriba el nombre del estudiante: ‘);
readl(nombre);
……..
listar; —> aqui llamamos al procedimiento listar definido antes
……..
end.
write(‘Escriba el nombre del estudiante: ‘);
readl(nombre);
……..
listar; —> aqui llamamos al procedimiento listar definido antes
……..
end.
Ejemplos de programación en pascal
Un sencillo ejemplo del programa Hola Mundo:
PROGRAM HolaMundo (OUTPUT);
BEGIN
WriteLn('¡Hola Mundo!');
{ como la siguiente instrucción no es
ejecutable "end."
no se requiere ; aunque puede ponerse según
las
preferencias del programador }
END.
Suma
PROGRAM Suma (INPUT, OUTPUT);
VAR
Sumando1, Sumando2, Suma:
INTEGER;
BEGIN
Write ('ingrese un numero: ');
ReadLn (Sumando1);
Write ('ingrese otro
numero: ');
ReadLn (Sumando2);
Suma: =Sumando1 + Sumando2;
WriteLn ('La suma es: ',
Suma);
WriteLn ('Pulse [Intro]
para finalizar...');
readln
END.
Raíz cuadrada
PROGRAM Raiz (INPUT, OUTPUT);
(*
Obtener la raíz cuadrada de un número real x cualquiera.*)
VAR
Valor, Resultado: REAL;
BEGIN
WriteLn ('** Calcular la raíz cuadrada
**');
Write ('Introduzca el
valor: '); ReadLn (Valor);
(* Raíz
cuadrada del valor absoluto de x para evitar raíces imaginarias *)
Resultado: = sqrt (abs
(Valor));
IF Valor > 0 THEN
(* Si es positivo, existe el
resultado en los reales *)
WriteLn ('La
raíz cuadrada de ', Valor, ' es ‘, Resultado)
ELSE (* Si es negativo, el resultado es
imaginario *)
WriteLn ('No existe la
raíz cuadrada de ',Valor,' en los reales.');
Write ('Pulse [Intro] para finalizar...');
END.
Comentarios
Publicar un comentario