comprobar cómo funciona este mecanismo de rodadura
,
seleccione la opción Pantalla en
el menú de edición (descrito en el capítulo 6) y luego
escriba:
CLS: FOR n=1 TO 30: PRINT n: NEXT n
Cuando se llena la pantalla, el +3 se detiene y emite el mensaje '¿MASr en la parte infe
rior de la
misma.
Ahora puede usted observar a su gusto los 22 primeros números. Cuan
do haya terminado, pulse
~
(para 'sí') y el +3 mostrará la
siguiente
tanda de números.
En realidad, da lo mismo pulsar
~
que cualquier otra tecla
,
a excepción de
¡m,
la barra
espaciadora y
I
BREAK
l.
Estas últimas hacen que el programa se detenga y que el ordena
dor emita el informe
'
D BREAK - CONT repite'.
La sentencia INPUT es capaz de hacer mucho más de lo que le hemos exigido hasta ahora.
Ya hemos visto sentencias INPUT similares a
INPUT "¿Cuantos años tienes?", edad
en la cual el +3 escribe la frase ¿Cuantos años tienes? en la pantalla inferior y queda
a la espera de que el usuario introduzca un número. Sin embargo, una sentencia INPUT
puede incluir elementos
y
separadores,
exactamente igual que las sentencias PRINT.
¿Cuantos años tienes?
y
edad son elementos de INPUT.
Los elementos de INPUT son generalmente iguales a los de PRINT, aunque hay algunas
diferencias
importantes:
Primero, un elemento adicional obvio de INPUT es la variable a la que se asigna valor
en la sentencia (en el ejemplo anterior, edad). La regla es que si un elemento de INPUT
comienza con una letra
,
BASIC considera que se trata de una variable cuyo valor se va
a introducir por el teclado.
Podría parecer que esto implica que no podremos escribir los valores de las variables como
parte de un mensaje
inductor.
(Mensaje inductor es el que se escribe en una sentencia IN
PUT para indicar al usuario cuál es la naturaleza de los datos que debe
introducir.)
Sin
embargo, esto se resuelve poniendo la variable entre paréntesis. Cualquier expresión que
empiece con una letra debe ir entre paréntesis si queremos que INPUT la escriba como
parte del mensaje inductor.
Cualquier clase de elemento de PRINT al que no afecten estas reglas es también un ele
mento de INPUT. Veamos un ejemplo:
LET mi edad = INT (RND*100): INPUT ("Tengo ";mi edad;" años.");
"¿Cuantos años tienes tu?", tu edad
Puesto que mi edad está entre paréntesis, INPUT escribe su valor. En cambio, tu edad
no va entre paréntesis, y por eso INPUT entiende que se trata de la variable a la que debe
asignar el valor captado.
Capítulo
8. Guía de programación en
+3
BASIC
120