De acuerdo, vamos al teclado. Empezaremos por escribir el nombre del programa:
10
REM guia de telefonos
No es imprescindible dar nombre a todos los programas, pero comprobará cuando tenga
grabados unos cuantos que es muy útil poder averiguar de un golpe de vista cuál es cuál.
Lo siguiente que necesitamos es poder captar por el teclado (con INPUT) una cadena de
caracteres (quizá un nombre) para luego poder asignarlo a una variable. A la variable que
represente el nombre le llamaremos NOMBRE$. Lo mismo se puede hacer con el número de
teléfono; a la variable le llamaremos TELS.
¿Recuerda todavía los programas del 'Curso de Introducción'? En algunos de ellos utilizábamos la
instrucción INPUT para captar los valores de las variables. Escribamos:
20
INPUT" Escriba el nombre
30
INPUT" Escriba el numero de telefono
run
En respuesta al programa podemos introducir un nombre (por ejemplo, Juan) y luego un
número de teléfono (por ejemplo, 923 233717).
El programa ha almacenado la información que le hemos suministrado, pero no ha escrito ningún
resultado en la pantalla. Así pues, en algún lugar del programa necesitaremos instrucciones del
tipo
PRINT NOMBRE$
con las que recuperemos los valores de las variables.
Algo falla, ¿verdad? Dijimos que nuestro programa debería ser capaz de almacenar 100 nombres
con sus números de teléfono; si seguimos por este camino, necesitaremos 200 instrucciones
INPUT para escribir la lista en la pantalla. No se inquiete; los ordenadores tienen un recurso que
permite manejar con facilidad grandes cantidades de datos: se trata de las 'listas'. Una lista es una
variable que puede representar, con un solo nombre (tal como NOMBRES), un grupo de datos
(en nuestro caso necesitamos 100) que se identifican por un índice. Cuando queramos referirnos
a un dato concreto, lo citaremos por el nombre de la variable seguido del índice entre
paréntesis; por ejemplo, NOMBRE$(27), donde 27 es el índice y NOMBRE$ es lo que
denominamos variable indexada. Si como índice ponemos una variable numérica, NOMBRES(x),
en lugar de un número concreto, podemos manejar la lista completa de datos, del 1 al 100,
variando el valor de x dentro de un bucle FOR ... NEXT (v. g., FOR x=1 TO 100). A medida
que se va incrementando el valor de x, el índice de NOMBRE$ va señalando los diferentes
elementos de la lista.
En nuestro programa necesitamos dos listas, NOMBRE$ y TEL$, cada una con capacidad para
100 elementos. Pero tenemos que informar al ordenador de nuestras intencione, y para ello
debemos dimensionar las listas con la instrucción DIM. Cambiemos las líneas 20 y 30:
20
DIM
NOMBRE$(100)
30
DIM
TEL$(100)
Ahora ya podemos escribir el tramo del programa que nos va a permitir introducir nombres y
números de teléfono. Añada las siguientes líneas:
40
FOR
x=1
TO
50
INPUT;" Nombre
60
INPUT;" Telefono
";NOMBRE$
... y ...
PRINT TEL$
100
";NOMBRE$(x)
";TEL$(x)
Manual de Amstrad CPC 6128 (revisión 2008) - Página 99
";TEL$