Manual de Introducción Spectrum 48k.

5. Programación Simple

Hasta ahora hemos estado diciendo al ordenador lo que ha de hacer directamente desde el teclado. Aunque es posible combinar comandos juntos, solamente son factibles aplicaciones limitadas con el empleo de este método.

Lo más importante respecto a los ordenadores es que son programables. Ello significa que podemos darles una serie de instrucciones para hacer que efectúen operaciones de forma secuencial

Cada ordenador tiene su propio lenguaje que nos permite comunicar con el mismo. Algunos lenguajes son muy sencillos, por lo que el ordenador puede comprenderlos con facilidad. Lamentablemente, lenguajes que son sencillos de comprensión para el ordenador no lo son tanto para los usuarios. En algunos aspectos, lo inverso también es cierto: lenguajes que nos son bastante sencillos de comprender son relativamente difíciles para el ordenador e incluso han de traducirse o interpretarse.

El ZX Spectrum utiliza un lenguaje de alto nivel denominado BASIC.

BASIC significa "Beginners All-purpose Symbolic Instruction Code" (Código de instrucciones simbólicas de uso general para principiantes) y fue concebido en la facultad universitaria de Dartmouth en New Hampshire, Estados Unidos, en 1964. Es muy ampliamente utilizado en los ordenadores personales, pero aunque es muy semejante en todos ellos hay sutiles diferencias. Esa es la razón por la que este manual se elabora concretamente para el ZX Spectrum. Pero el BASIC del ZX Spectrum no está muy alejado de un BASIC de consenso (no existente) y por ello, no debe tener demasiadas dificultades en adaptar cualquier programa en BASIC para su ejecución en el ZX Spectrum. A diferencia con otras versiones de BASIC, la del ZX Spectrum no permite que se omita el comando LET cuando se asignen valores a las variables.

Hay un límite para el número de instrucciones que pueden almacenarse en el ordenador. El ZX Spectrum indica este límite emitiendo un zumbido.

Cuando se programa en BASIC es necesario hacer conocer al ordenador el orden en que han de ejecutarse las instrucciones. De aquí que cada línea de la secuencia de instrucciones tenga un número en su principio. Es normal comenzar en 10 e ir incrementando en 10 por cada nueva línea. Esto permite que se inserten otras líneas si se hubieran omitido o modificar el programa.

Examinemos un programa sencillo. Consideremos la serie de comandos al final del último capítulo. Si necesitamos repetir la serie de comandos, sería necesario introducirlos cada vez. Un programa resuelve el problema eliminando dicha necesidad.

Introduzca lo siguiente con ENTER después de cada línea.

10 LET b$ = "Cual es su edad?"
20 LET a$ = "Su edad es "
30 INPUT (b$); edad
40 PRINT a$; edad

Observe que no es necesario introducir ningún espacio, salvo entre comillas.

Nada sucederá realmente hasta que digamos al ordenador que comience a ejecutar el programa. Esta orden se comunica con el empleo de RUN (la palabra clave en R).

Introduzca este comando y vea lo que sucede.










(Cual es su edad?  L 
Figura 4

También puede haber notado una flecha apuntando a la derecha cuando se ha introducido cada línea. Ella indica la última línea introducida. Si necesita volver a ver el programa, pulse ENTER (o LIST). Puede emplear RUN para ejecutar el programa tantas veces como quiera. Cuando ya no necesite el programa, puede suprimirlo con el empleo del comando NEW, el cual borra el programa almacenado en memoria y le proporciona una "pizarra limpia" dispuesta para que escriba uno nuevo.

Teclee NEW, luego ENTER y vea lo que sucede.










(c) 1982 Sinclair Research Ltd.
Figura 5

Para recapitular:

Cuando teclee un comando precedido por un número, este último comunica al ordenador que no se trata simplemente de un comando, sino de una línea de programa. El ordenador no procede a ejecutar la instrucción correspondiente, sino que realiza su almacenamiento para más tarde.

El ZX Spectrum escribe en la pantalla (o lista) todas las líneas de programa que ha introducido con un  >  en la última línea.

El ordenador no ejecutará inmediatamente ninguna de estas líneas, sino que las va almacenando en su interior.

Para conseguir que el ordenador ejecute estas líneas, debe emplear el comando RUN.

Si pulsa ENTER, conseguirá un nuevo listado.

Consideremos otro programa sencillo. Este será algo más matemático e imprimirá los cuadrados de todos los números entre 1 y 10 (el cuadrado de un número es ese número multiplicado por sí mismo).

Para generar números de 1 a 10 se introduce otro concepto en la programación en BASIC. Se trata del método mediante el cual conseguimos que cuente el ordenador. Anteriormente vimos que los números pueden almacenarse en la memoria del ordenador uniendo un "nombre" a los mismos o dicho técnicamente, asignando un valor a una variable. Sea la variable x que comienza con el valor 1 y que ha de incrementarse en pasos de 1 hasta 10. Esta operación se realizará con el empleo del comando FOR ... TO ... STEP.

Por tanto, para introducir este programa, teclee NEW para deshacerse del anterior y escriba lo siguiente:

10 FOR x = 1 TO 10 STEP 1

(la parte STEP 1 normalmente puede omitirse si el contaje se incrementa en pasos de 1).

La siguiente línea debe comunicar al ordenador lo que ha de hacer con x para cualquier valor que tenga. Para ello, teclee:

20 PRINT x, x * x

Finalmente, necesitamos una línea para decirle al ordenador que vaya al siguiente valor de x; por consiguiente, teclee:

30 NEXT x

Al llegar a esta instrucción, el ordenador vuelve a la línea 10 y repite la secuencia. Cuando x supera a 10, el ordenador pasa a la siguiente línea en el programa, esto es, la línea 40.

El programa debe aparecer ahora en la pantalla como sigue:

10 FOR x = 1 TO 10 STEP 1
20 PRINT x, x * x
30 NEXT x

Para la conclusión, debemos tener otra línea que comunique al ordenador que el programa ha finalizado cuando x=10; por tanto, teclee:

40 STOP

Si el programa está ahora en RUN (ejecución) deben aparecer dos columnas, la primera con los valores de x y la segunda con los valores de x * x o x al cuadrado. Es posible etiquetar estas columnas añadiendo otra línea, tal como:

5 PRINT "x","x * x"

Nótese que aunque esta línea se haya introducido después de todas las demás líneas, por tener un número de línea más bajo el ordenador la coloca automáticamente en el lugar correcto.

Intente escribir programas con el empleo de otras funciones matemáticas. Si tiene alguna duda sobre cómo utilizarlas, haga referencia a las páginas correspondientes en el manual de programación en BASIC.


Manual de Introducción Spectrum 48k.