Pascal Basico

Bien, este manual pretende ser mas que nada una guía práctica para aquellas personas que ya están familiarizadas con los lenguajes de programación y no quieren que les expliquen paso por paso cómo se debe proceder, bien, de todas formas este famoso lenguaje es lo más parecido a una suerte de pseudocódigo en inglés..

Primero lo que necesitamos es un compilador
en ESTA DIRECCIÓN :http://www.mediafire.com/?5qdvb2alb4jojvk
están todos los ejemplos que se van a realizar en este manual y además
les deje un compilador de pascal,
para comenzar lo descomprimen
despues en la misma carpeta van
a BIN\TURBO.EXE
lo ejecutan y tiene que salir una
ventana parecida a la del CMD
de Windows. En la carpeta BIN\PROBAEJEMPLOS
estan los ejemplos.

bien para compilar un programa
van al programa(que esta abierto)
le dan clic a compile, luego hacen
clic de nuevo en compile(del cuadro desplegable)
y una vez compilado, para correr el programa
van a RUN  y luego le dan
-en el cuadro desplegable- a RUN

Al correr tengan en cuenta que
la pantalla se va a poner en negro
y se va a ejecutar el programa.

A veces hay datos anteriores
que estan de las anteriores veces
que corrimos los programa
para eso usamos una instruccion
que se llama CLRSCR  (del ingles
clear screen) que lo que hace
es limpiar la pantalla ( borrar todo
lo que hay en ella. )

bien vamos a comenzar a programar
todo programa comienza así

PROGRAM  nombre de programa;

esta instrucción, le da nombre al programa
es sencillo, va la palabra clave PROGRAM
un espacio y el nombre que le vamos a asignar,
al final tiene un punto y coma que dice que
la instrucción  de darle nombre al programa
termino.

Uses crt;

Esta instruccion provee las funciones
basicas de pascal, como read, write, readln
writeln, otras.
NOTA: a veces se tienen problemas en la
compilación del programa, esto es un
problema de hardware, a veces se necesita, ademas
de crt, agregar newdelay
por lo que si nos llega a aparecer
algún error raro, prueben poner

Uses newdelay, crt;

como siempre, el punto y coma
es obligatorio y denota el final
de la instrucción

var
varaible1:integer;


La palabra clave var sirve
para avisarle al compilador
que en esa sección de código en adelante
se van a crear las variables
más adelante vamos a ver
tipos y todo eso, bien..

const
pi = 3.14;

Esta instrucción es similar a
var, pero en vez de variables
aquí declaramos constantes
quiere decir, valores que
no van a cambiar durante
la ejecución del programa.

Begin
{instrucciones del programa}
End.

Las palabras BEGIN y END delimitan
el inicio y fin del programa. Si lo notaron
puse un punto("."), en vez del convencional
punto y coma al final del END, esto
es porque en el programa por lo general
vamos a tener begin(s) y end(s) de
algunas sentencias como los if - else
los bucles y otros. Esto permite
que sea diferente a los demás
para que este bien discriminado
donde se inicia y donde se
finaliza el programa.

Los comentarios en PASCAL se ponen entre llaves {comentario}

bien, hasta ahora, lo visto fue
Program ProbaCodigos; 
uses crt;

const
pi = 3.14; 

var  
mivar:integer;
Begin
{instrucciones}
End.
Cabe destacar que las constantes van antes que las variables.

Bien esa es nuestra estructura de programa...


Real   = Real
Ejemplo : 6.0233
Carácter  = Char
Ejemplo :  'S'
Cadena de caracteres = String
Ejemplo : 'Soy una cadenaaaaa'
Lógico  =  Boolean
Ejemplo :  false



Tipos de datos en pascal
TipoPascalEjemplo
EnteroInteger 300
RealReal6.023
CarácterChar'S'
Cadena de caracteresString     'Soy una cadena de texto'
BooleanaBooleanfalse


Operadores Numericos en Pascal
Suma+
Resta-
Multiplicación*
Division Enteradiv
Division Real/
Módulomod

Operadores Lógicos en Pascal
Negacion (no)not
Conjuncion (y)and
Disyuncion (o)or

Operadores relacionales(de comparación) en Pascal
Mayor que>
Menor que<
Igual a=
Mayor o igual a>=
Menor o igual a<=
Distinto a<>

Asignación
En pascal, la manera de asignarle un valor a una variable se hace de la siguiente manera

A : = 3
a la variable A se le asigna el valor 3
A:=A+1;
a la variable A se le asigna el valor que tenia más 1

Mostrar por pantalla
En pascal, hay dos caminos posibles para mostrar una información en pantalla
podemos usar las funciones
WRITE
o
WRITELN
la diferencia entre estas es que, la primera escribe todo el texto y no realiza un salto de linea al terminar de imprimir, en cambio, la segunda(writeln) si. Cuando termina de imprimir una información, realiza un salto de linea.

entonces
podemos hacer
un programa mas o menos asi

program HolaMundo;
uses newdelay, crt;
{no usamos variables ni constantes asi que podemos omitirlo}
begin
clrscr; {recorda, para limpiar pantalla}
writeln('Hola Mundo');   {El texto a mostrar} 
delay(2000);  {un delay (retardo) para que podamos visualizar el resultado}
end.

tambien podriamos haber hecho
algo como

program HolaMundo2;
uses newdelay, crt;
var caracter:string;
begin
clrscr;
caracter:='Hola Mundo';
writeln(caracter);
delay(2000);
end.


Ingresar valores
Asi como en la funcion anterior, aca tenemos dos formas de leer datos de entrada
READ
o
READLN
la diferencia es la misma, read lee y sigue en la misma linea, readln lee y va a la siguiente linea.

Ejemplo


program leerEntrada;
uses newdelay, crt;
var ingrDato:string;
begin 
clrscr;
writeln('Ingrese un texto');
readln(ingrDato);
write('usted ingreso' , ingrDato);
delay(2000);
end.
NOTA:  la coma (",") sirve para unir dos o mas textos o cadenas, ya sea variables o texto.
Esctructuras de repeticion
Repeat- until , repite cierta cantidad de código hasta que una condición se cumpla
ejemplo: este programa hace lo mismo que el anterior, pero pregunta si queres salir usando esta estructura de repeticion


program RepetirHastaQue;
uses newdelay, crt;
var decision:char, texto:string;
begin
repeat
clrscr;
writeln('ingrese un texto');
readln(texto);
writeln('usted escribio', texto);
writeln('desea continuar ? (s/n)' );
readln(decision);
until(decision='n') or (decision='N');
end.


Estructura de repeticion while-do
repite un bloque de instrucciones mientras
una condición sea verdadera
ejemplo:pide un numero, mientras ese numero sea mayor a 10, sigue pidiendo el ingreso del dato.

program Mientras MyM;
uses newdelay, crt;
var numeroa:integer;
begin
clrscr;
writeln('ingrese un numero menor o igual a 10');
readln(numeroa);
while(numeroa>10) do
begin
writeln('el numero debe ser menor a 10');
readln(numeroa);
end;
write('usted ha ingresado un numero valido');
delay(1500);
end.


Bien esto ha sido todo en esta primera parte, pero que le saquen provecho y que esperen con entusiasmo la segunda parte, nos vemos, un beso....