PDF de programación - Delphi: el hijo de Pascal

Imágen de pdf Delphi: el hijo de Pascal

Delphi: el hijo de Pascalgráfica de visualizaciones

Publicado el 16 de Junio del 2018
1.147 visualizaciones desde el 16 de Junio del 2018
2,5 MB
26 paginas
Creado hace 23a (28/04/2001)
ProgramacionU#117.qxd 4/28/01 6:06 PM Page 76

E X P E R T O S

P R O G R A M A C I Ó N

CREANDO NUESTRA PROPIA CALCULADORA

Delphi: el hijo de Pascal

Generalmente, los PRIMEROS PASOS en el área de la
programación se realizan con Pascal, debido a que sus
sentencias no son complicadas ni difíciles de entender.
La empresa BORLAND nos ofrece esta alternativa en
LENGUAJES VISUALES que nos permitirán hacer
nuestras propias aplicaciones con base en Pascal.

Alex VALENCIA
[email protected]
Estudiante de Ciencias de la Computación y
experto en programación.

D

elphi es un lenguaje de programación muy flexible y fácil
de usar, sobre todo para aquellas personas que dominan
el conocido lenguaje Pascal. Si bien en estos últimos años los
lenguajes como Visual Basic o JAVA han tenido una gran reper-
cusión dentro del mundo de la programación visual, Delphi no
se queda atrás, y presenta las características típicas de los len-
guajes visuales, lo que lo vuelve fácil de aprender para cual-
quiera que sepa usar este tipo de herramientas, o bien para
quien quiera comenzar a usarlas. La interfase del programa re-
sulta muy familiar para los programadores de Visual Basic. Con-
tiene objetos muy similares y la mayoría de sus propiedades son
las mismas (en la Figura 1 se muestra la pantalla de un pro-
yecto en blanco).

Sin embargo, existen ciertas diferencias entre este lenguaje
y Visual Basic, desde del punto de vista del manejo de ciertas
estructuras y, obviamente, sintáctico. El objetivo de esta nota
es cubrir algunos aspectos básicos que nos resultarán útiles
para nuestra calculadora de ejemplo y para guiarnos por los
primeros pasos en Delphi.

Procedimientos y funciones
A diferencia de Visual Basic, el lenguaje Delphi usa proce-
dimientos y funciones para ejecutar el código que utiliza
nuestro programa. La diferencia principal entre ambos es que
las funciones reciben parámetros y devuelven el resultado en
el nombre de la función (como en VB). En cambio, los proce-
dimientos se encargan de ejecutar un código prescrito que se
basará en parámetros que se califican de “entrada”, “salida”
y de “entrada/salida”, a través de los cuales enviaremos da-
tos y recibiremos resultados. La forma de declararlos está en
la Tabla 1.

Variables y constantes
A diferencia de otros lenguajes y al igual que C, Delphi usa
referencias en las declaraciones de variable, lo que significa
que utiliza punteros a una dirección donde se almacena el da-
to que queremos escribir o leer.

Esto lo vuelve mas útil en algunas cosas; tal vez una de las
más importantes sea el tipo de dato string, que es manejado

Figura 1. Ésta es la pantalla principal
de Delphi. Como se ve, no es muy
diferente de otros programas de
lenguaje visual, por lo cual no nos
resultará difícil familiarizarnos con él.

Figura 2. Aquí está nuestro primer
programa. En una de esas, Bill nos
compra los derechos para incluirlo en su
próximo Windows.

Figura 3. Aquí vemos cómo quedaría la
interfase gráfica de la calculadora.
Obviamente, podemos hacerla como más
nos guste.

76

u s e r s . t e c t i m e s . c o m

ProgramacionU#117.qxd 4/28/01 6:07 PM Page 77

Si no tenemos Delphi,
podemos bajarlo de la
página oficial,
www.borland.com/downloads, donde
hay una versión trial de
30 días de duración.

como cadena, donde podremos indexar un carácter específico,
lo que hace mucho más flexible el trabajo sobre este tipo de
datos.

También encontraremos otros tipos de datos, que podremos
utilizar en nuestras aplicaciones y que desarrollaremos a me-
dida que avancemos en nuestra aplicación de ejemplo (se de-
tallan en la Tabla 2). En esta ocasión, construiremos una
sencilla calculadora.

El manejo de las constantes es similar que en los demás len-
guajes, pero además, podremos usar constantes del tipo ty-
ped, que nos permitirán utilizar estructuras de datos (vecto-
res, registros, punteros, etc.) como constantes.

El clásico mensaje
Para familiarizarnos y perderle el miedo a Delphi, empezare-
mos con el típico ejemplo del mensaje. En este caso, usamos
el clásico “Hello World” u “Hola mundo“, que aparecerá cuan-
do presionemos un botón.

1) Creemos, dentro de un form vacío, sólo un botón, con el
nombre botón y el caption El clásico mensaje. El caption se-
rá el texto que aparecerá en él.

2) Ahora hacemos doble clic para dirigirnos al código del

evento clic.

3) Escribimos el siguiente código:

begin {El Begin y End estan escritos por de-
fault}
application.messagebox(‘hello World’, ‘mensaje de
prueba’,MB_OK)
end;

Una vez terminado, podremos hacer correr el programa con
<F9> y ejecutar esta “útil” aplicación. Esto debería quedar
como se ve en la Figura 2. Delphi es más estricto que VB, ya
que las funciones deben incluir todos sus parámetros; en ca-
so contrario, mostrará un error.

Nuestra propia calculadora
Ahora comenzaremos a programar una aplicación un poco
más útil y, de esta forma, podremos adentrarnos un poco más
en el lenguaje Delphi. Haremos una calculadora con las fun-
ciones básicas, para lo cual la interfase gráfica quedará como
nos muestra la Figura 3, con 16 botones y un objeto memo
(debido a que nos permite alinear a la derecha), alineándolo
con la propiedad Align.

Debemos tener en cuenta un par de cosas antes de empezar,
como que hay que mantener el primer operando en el display
hasta ingresar el otro, no perder el último operando para ha-
cer que la tecla <=> funcione consecutivamente, etc., pero
iremos viendo todo esto a medida que creemos las funciones.
Debido a que necesitaremos muchas comprobaciones (posi-
bles acciones por parte del usuario), deberemos definir algu-
nos flags o banderas que nos sirvan de guía. La Tabla 3 mues-
tra las variables que usaremos y definiremos como globales,
o sea que se declaran fuera de los procedimientos (como en
VB, pero sin la palabra Public) y debajo de la palabra reser-
vada VAR.

Como toda buena calculadora, debe inicializarse con el 0,
por lo cual en el evento formcreate de nuestra form escribi-
remos:
display.Text := ‘0’; {asignamos la cadena ‘0’ al

❙ Tabla 1: Parámetros

En esta tabla se indica la forma de declarar parámetros de
entrada, salida y entrada/salida.

Tipo de parámetro Declaración
Entrada (por valor) Procedure calc (X:integer)
Salida
Entrada/salida
(por referencia)

Procedure calc (out num:integer)
Procedure calc(var X, Y:
Integer);

u s e r s . t e c t i m e s . c o m

77

ProgramacionU#117.qxd 4/28/01 6:07 PM Page 78

E X P E R T O S

P R O G R A M A C I Ó N

display}
{inicialización de flag}

Bien, ahora debemos hacer que los números nos respondan,

así que creamos un procedimiento:
Procedure numero (display: TMemo; num:char; var
flag:boolean);
{ojo!!, hay que pasar al display por parámetro tam-
bién, otra cosa diferente a VB}
Begin
if (display.Text = ‘0’) then {primero verificamos el
0}

display.text:= num

else
begin

rificar la existencia del punto.
var

aux:string;
flagpun:boolean;
j,i:integer;

begin

aux:=display.text; {copiamos la cadena a una

variable auxiliar}

i:=length(aux); {contamos sus caracteres con la

función ‘length’}

for j:=1 to i do {recorremos la cadena}
begin

if aux[j] = ‘.’ then {verificamos el punto}

flagpun:=true

end;

if flag = true then {Este flag indica si esta-

if flagpun= false then {si no había, lo agrega-

mos en una operación}

begin
display.text:= num ;
flag:=false
end
else
display.text:= display.text + num ;
end

end;

Como muestra el código, debemos crear un flag (variable
boolean) que pasará por parámetro y nos será útil para man-
tener el número del primer operador en el display cuando ha-
ya una operación activada.

Sólo basta colocar este procedimiento en el evento Clic de
los botones de los números y el punto con los parámetros co-
rrectos, y listo:
numero (display,’1’, flagop); {ejemplo para el botón
de la tecla 1}

Para el punto (.) es diferente, ya que, si usamos el mismo
procedimiento que utilizamos para los números, nos dará la
opción de repetir más de una vez el carácter del punto
(¿2.45.6? No es un número muy bonito). Por eso desarrolla-
mos otro procedimiento para éste, que irá incluido directa-
mente en el evento Clic, como se muestra a continuación, y
donde usaremos la posibilidad de indexar un caracter para ve-

❙ Tabla 2: Tipos de datos

mos}

end;

display.text:=display.text+’.’

Cambio de tipo de datos
Aquí se nos presenta un importante problema, que será co-
mún a la mayoría de las aplicaciones que creemos en lengua-
jes visuales. Éste es el cambio de tipo de dato. Como se sabe,
un objeto memo devuelve, en su propiedad .text, una cadena
de caracteres y no un número real; por esta razón, si sumamos
“1” + “2”, el resultado será “12”, ya que concatenamos texto.
Debemos cambiar el tipo de dato a real para que los sume co-
mo números reales.

En VB existe la función Val, con la que pasamos por paráme-
tro la cadena y nos devuelve el número; pero en Delphi no te-
nemos tanta suerte, y deberemos acudir a las variables de ti-
po variant, que nos permitirán cambiar el tipo de dato. Para
esto, creamos dos funciones, Textoreal y Realtotex, que usa-
remos para este problema. Como son funciones, se trata de có-
digo transportable y reutilizable, y podremos usarlas en cual-
quier otra aplicación que creemos con sólo incluirla, o crear
una Unit con nuestras propias funciones. El código sería el si-
guiente:
function textoreal (tex:string): real;
var

aux: variant;

begin

aux:= tex; {del texto al variant}

textoreal:= aux; {del variant

Éstos son otros tipos de datos útiles que podemos utilizar en nuestras aplicacio-
nes.

Tipo de dato Descripción
Enumerado

Dato de definición de valores

Puntero
Subrango

Dato de dirección de memoria
Dato definido en un rango
ordinal de un tipo de dato.

Ejemplo
Type colores = (blue,
green, red)
Type pchar=^char
I := 0..99
I := ‘A’..’Z’

78

u s e r s . t e c t i m e s . c o m
  • Links de descarga
http://lwp-l.com/pdf11923

Comentarios de: Delphi: el hijo de Pascal (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad