22 marzo 2014

Pascal - 0: Contacto

0. Contacto con Pascal

0.1. ¿Por qué Pascal?

A finales de los años 80 y principios de los 90, el lenguaje Pascal era uno de los mejor considerados a la hora de enseñar los fundamentos de la programación de ordenadores. Hoy en día hay lenguajes más potentes que también pueden ser adecuados para comenzar, pero suelen tener una curva de aprendizaje un poco más pronunciada que la de Pascal, por lo que existen bastantes centros de estudios que siguen usando Pascal como lenguaje de introducción a la programación y/o a la resolución de problemas con la ayuda de una computadora.

0.2. ¿Cómo es un programa básico?

Ésta es la apariencia de un programa básico en Pascal:
program Saludo;
 
(* Escribe Hola en pantalla *)
 
begin 
  write('Hola');
end.
 
Como se puede observar, casi todas las palabras están escritas en inglés. Será lo habitual en las "órdenes" que podremos dar en lenguaje Pascal, y también ocurrirá en la mayoría de lenguajes de programación.
Es habitual, aunque es opcional en la mayoría de versiones de Pascal, usar al principio la palabra "program", seguida del nombre que demos a nuestro programa. Nos ayudará a recordar de un vistazo para qué sirve el programa.
Si queremos añadir algún comentario más detallado, lo podemos indicar entre "(*" y "*)". Lo que escribamos entre esos símbolos será una aclaración para nosotros, que no afecta al funcionamiento real del programa. La mayoría de versiones de Pascal permiten también usar llaves: "{" y "}".
En el lenguaje Pascal no existe distinción entre mayúsculas y minúsculas, por lo que "BEGIN" haría el mismo efecto que "begin" o "Begin". Así, lo mejor será adoptar el convenio que a cada uno le resulte más legible: algunos autores emplean las órdenes en mayúsculas y el resto en minúsculas,otros todo en minúsculas, otros todo en minúsculas salvo las iniciales de cada palabra... Yo emplearé normalmente minúsculas, y a veces mayúsculas y minúsculas combinadas cuando esto haga que alguna orden especialmente larga resulte más legible.
Si sabemos un poco de inglés, podríamos traducir literalmente el programa anterior, y así intuir lo que hace:
programa saludo
comienzo
escribir 'Hola'
final
Efectivamente, todo programa en Pascal deberá empezar con la orden "begin" y terminar con "end." (cuidado: esa palabra "end" debe terminar con un punto).
Y para escribir usaremos "write". El conjunto de todo lo que se desee escribir se indica entre paréntesis. Cuando se trata de un texto que queremos que aparezca "tal cual", éste se encierra además entre comillas (una comilla simple para el principio y otra para el final, como aparece en el ejemplo).
La orden "write" debe terminar en punto y coma y lo mismo ocurrirá con todas las órdenes que formen nuestro programa. En ocasiones podremos omitir ese punto y coma, pero veremos más adelante qué ocasiones son esas.
Hemos escrito la orden "write" algo más a la derecha que el resto. Esto se llama escritura indentada, y consiste en escribir a la misma altura todos los comandos que pertenecen a un mismo bloque, para conseguir una mayor legibilidad. Realmente, en un programa en Pascal no hay necesidad de conservar una estructura tal que aparezca cada orden en una línea distinta. Los espacios en blanco, así como las líneas en blanco y los comentarios, son cosas que se suelen añadir claridad, pero realmente son los puntos y coma lo que indica el final de una orden, por lo que el programa anterior se podría haber escrito:
 
program Saludo; begin write('Hola'); end. 
 
o bien
program Saludo;
  begin            write('Hola');
     end.
 
lo que desde luego no se puede hacer es "partir palabras": si escribimos
pro gram Saludo;
el ordenador creerá que "pro" y "gram" son dos órdenes distintas, y nos dirá que no sabe qué es eso.
(¿Quieres más detalles o ejercicios propuestos? Aquí los tienes: nachocabanes.com/pascal/cupas5/cupas00.php )