Esta Introducción al Lenguaje Basic la escribí en el año 1989, en respuesta a una petición del PNTIC, (hoy CNICE) de elaborar un sencillo Manual para la introducción a la Programación en los currículos de Informática en la Enseñanza Secundaria de aquellos tiempos. Hoy en día, a nadie se le ocurre programar en Basic (Basic A, GW Basic, Quick Basic, Turbo Basic, etc.), pero para las personas que quieran introducirse en el mundo de los Lenguajes de Programación, el BASIC tiene un componente didáctico muy importante, porque sienta las bases de un método que luego puede servir para la mejor comprensión de otros Lenguajes. Soy de los que opinan que debe introducirse la Programación en los currículos de Informática de 3º de ESO, y nada mejor que el Basic para ello. En 4º de ESO deberían abordarse las iniciaciones a otros Lenguajes actuales, como C o C++, y en Tecnologías de la Información del Bachillerato, profundizar en los anteriores, o iniciar al alumno en Visual Basic o Java.

Es importante resaltar que la inclusión de los símbolos " ~" y " |" acompañando a comandos, variables o funciones, deben obviarse para plataformas actuales, aunque he respetado el original por la componente nostálgica del documento elaborado a finales de los ochenta, y que exigía el uso de estos símbolos en determinadas arquitecturas.

 INDICE

Introducción al BASIC......................................................1.01

PRINT .....................................................................1.02

PRINT (continuación).......................................................1.03

Variables..................................................................1.04

Variables (continuación)...................................................1.05

LET .......................................................................1.06

PRINT y LET ...............................................................1.07

Números de línea...........................................................1.08

LIST ......................................................................1.09

LIST (continuación)........................................................1.10

RUN .......................................................................1.11

INPUT .....................................................................2.01

INPUT (continuación).......................................................2.02

Variables Cadena...........................................................2.03

Más sobre LET ............................................................2.04

Más sobre LET (continuación)...............................................2.05

Más sobre LET (continuación)...............................................2.06

NEW .......................................................................2.07

DATA y READ ...............................................................3.01

DATA y READ (continuación).................................................3.02

GOTO ......................................................................3.03

IF THEN ...................................................................3.04

IF THEN (continuación)....................................................3.05

IF THEN (continuación)....................................................3.06

Operadores Lógicos.........................................................3.07

ELSE ......................................................................3.08

Líneas con instrucciones múltiples.........................................3.09

REM .......................................................................4.01

STOP y END ................................................................4.02

STOP y END (continuación)..................................................4.03

EDIT ......................................................................4.04

AUTO ......................................................................4.05

AUTO (continuación)........................................................4.06

TRON y TROFF ..............................................................4.07

TRON y TROFF (continuación)................................................4.08

TRON y TROFF (continuación)................................................4.09

RND .......................................................................4.10

INT .......................................................................4.11

ABS .......................................................................4.12

ABS y INT (continuación)...................................................4.13

Introducción al BASIC

El BASIC es uno de los muchos lenguajes de Ordenador. El nombreBASIC viene de |B~eginner's |A~ll-purpose |S~ymbolic |I~nstruction |C~ode. Dadoque es uno de los lenguajes más fáciles de aprender, el BASIC ha llegado a ser el lenguaje más popular para introducirse en la Informática.

El BASIC consta de instrucciones, comandos y funciones. Estas son

palabras inglesas que tienen un significado especial para el ordenador. Los

programas en BASIC son sencillamente un grupo de instrucciones, comandos y

funciones, que realizan conjuntamente una tarea determinada.

En los próximos capítulos, iremos introduciendo estos comandos,

funciones e instrucciones y ofreciéndole la oportunidad de comprobar de qué

manera actúan. Lo más importante es intentar comprobar cómo funcionan.

No tenga miedo de equivocarse, si lo hace el ordenador se lo dirá. Si éste es

el caso, intente hacerlo de nuevo de una manera diferente.

La instrucción PRINT

Lo primero que tenemos que aprender, es cómo hacer que el ordenador

escriba algo en la pantalla. Esto se hace con la instrucción PRINT. Esta

instrucción le indica al ordenador que escriba todo lo que sigue a PRINT.

                         SI TECLEA                   EL ORDENADOR ESCRIBE

PRINT 5                                 5

Si queremos que el ordenador escriba la respuesta de un problema

matemático escribiremos loa cálculos a realizar detrás del PRINT.

SI TECLEA                 EL ORDENADOR ESCRIBE

PRINT 3+2                            5

Ahora realicemos los ejemplos, anteriores escribiendo lo que está

debajo de |SI TECLEA y pulsando |return~ a continuación. Con |F2~ continuamos.

La instrucción PRINT (continuación)

Si queremos escribir palabras en la pantalla, las debemos escribir

entre comillas (" ").

         SI TECLEAMOS                EL ORDENADOR ESCRIBE

PRINT "Lo que se te ocurra."                  Lo que se te ocurra.

Si queremos escribir texto junto con la respuesta a un problema

matemático, debemos separar ambos, bien con una coma (,) o punto y coma (;)

SI TECLEAMOS                        EL ORDENADOR ESCRIBE

PRINT "La suma de 3+2 es" ; 3+2~                         La suma de 3+2 es 5

PRINT "La suma de 3+2 es" , 3+2~                          La suma de 3+2 es 5

La diferencia entre usar la coma y el punto y coma es la cantidad de

espacios que el ordenador escribe. Realice ahora los ejemplos indicados bajo

las palabras SI TECLEAMOS.

(En el BASIC de IBM se puede omitir el punto y coma, en otras versiones no.)

Variables

Lo siguiente que vamos a aprender es el concepto de variable. Una

variable es un símbolo (usualmente una letra del alfabeto) que se usa para

representar un número. Una variable puede representar varios valores. Las

variables son muy importantes en la programación de un ordenador.

En la expresión algebraica:

9=X+3,

X es la variable. Para que |9=X+3~ sea cierto, el valor de |X~

debe ser |6~ (porque |9~ y |6+3~ son iguales).

En la expresión:

SUM=A+B,

|SUM~, |A~ y |B~ son variables. |A~ y |B~ pueden tener cualquier valor

y la variable |SUM~ es la suma de esos valores.

Variables (continuación)

Como hemos visto, el nombre de una variable puede tener más de una

letra. De hecho, puede contener hasta 40 caracteres. El primer carácter de

la variable debe ser una letra, pero los siguientes 39 pueden ser letras o

números. Existen muchas palabras reservadas que no se pueden utilizar como

nombres de variables. Estas son las instrucciones del lenguaje BASIC.

A continuación veremos algunos nombres inválidos de variables:

|FAT@~ - Todos los caracteres deben ser letras o números, |@~ no lo es.

|2TALL~ - El primer carácter tiene que ser una letra, |2~ es un número.

|PRINT~ - |PRINT~ es una palabra reservada en BASIC .

Es una buena idea hacer los nombres de las variables tan descriptivos

como sea posible. Si queremos escribir un programa que sume dos números,

utilizaremos las variables |RESULTADO, |NUM1~ y |NUM2~. Esto nos ayudará a

saber qué hacen las variables, pero no ayudará de ninguna manera al ordenador.

El nombre de la variable envía al ordenador a una zona de memoria donde esta

almacenado su valor.

La instrucción LET

La instrucción LET asigna una expresión a una variable. En BASIC IBM

la palabra LET es opcional. El signo igual es suficiente como vemos en los

siguientes ejemplos:

LET A=3 o A=3

En los dos casos el valors, 3 se asigna a la variable A.

LET SUM=A+B o SUM=A+B

Aquí, la suma de las variables |A~ y |B~ se asigna a la variable |SUM~.

|LET K=K+1~ o |K=K+1~

En álgebra, la expresión |K=K+1~ es falsa. (¿Cómo un número puede ser

igual al mismo más 1?). Pero en BASIC significa que el  nuevo valor de |K~

será igual al viejo valor de |K~ mas |1~.

Las instrucciones PRINT y LET.

Hasta que no hayamos asignado un valor a una variable (mediante LET ),

ésta será igual a cero. Si usamos una variable en una instrucción PRINT, se

escribirá el valor de la variable, no su nombre. Escribamos las siguientes

cinco líneas para ver como actúan PRINT y LET conjuntamente.

|PRINT NUM1 ; NUM2 ; SUM~

|LET NUM1=45

LET NUM2=5

|SUM=NUM1+NUM2~

|PRINT "La suma de" ; NUM1 ; "y" ; NUM2 ; "es" ; SUM~

Números de LINEA

Como aprendimos anteriormente, un programa es un grupo de instrucciones.

La manera de que el ordenador ejecute las instrucciones de un programa es

numerando cada instrucción con un número de línea. El ordenador realiza

cada instrucción en el orden marcado por su número de línea.

En las siguientes instrucciones:

|10~ PRINT 3+2

|20~ PRINT 3+3

|10~ y |20~ son números de línea.

El comando LIST.

Escribiendo |LIST~ y tras pulsar return, se escribirá el programa que

está en la memoria. Escriba el siguiente programa y después teclee LIST.

|10 PRINT 3+2~

|20 PRINT 3+3~

|30 PRINT 3+4~

|40 PRINT 3+5~

El comando LIST (continuación)

El ordenador siempre ejecuta el programa en orden creciente, empezando

por el numero de línea más bajo. Si queremos escribir la instrucción |PRINT 3+1~

antes de la línea |10~, entonces le asignamos un número de línea menor de 10.

Escribamos lo siguiente:

|10 PRINT 3+2~

|20 PRINT 3+3~

|30 PRINT 3+4~

|40 PRINT 3+5~

|5 PRINT 3+1~

Ahora escriba |LIST~ y pulse return. El comando LIST mostrará el

programa en orden numérico. Convencionalmente se asignan números de línea

incrementados de 10 en 10. El ordenador  renumerará las líneas, si tecleamos

la palabra |RENUM~ y pulsamos return. Hágalo y después teclee |LIST~ para

comprobar lo que ocurre.

El comando RUN

El comando |RUN~ ejecuta nuestro programa . Cuando antes escribíamos

PRINT 3+2 y pulsábamos return, el ordenador ejecutaba la instrucción PRINT

inmediatamente. Ahora cuando ponemos un número de línea, el ordenador guarda en

en su memoria la instrucción y espera la orden RUN para ejecutar el programa.

Escriba lo siguiente, teclee |RUN~ y pulse return.

|10 PRINT 3+1~

|20 PRINT 3+2~

|30 PRINT 3+3~

|40 PRINT 3+4 ;~

|50 PRINT 3+5~

(Observe que el punto y coma escribe el |8~ en la misma línea que el |7~.)

La instrucción INPUT

La instrucción |INPUT~ nos permite introducir datos desde el teclado

mientras el programa se está ejecutando. Cuando el programa encuentra un INPUT

se para y aparece una interrogación, esperando que introduzcamos un número para

continuar con la línea siguiente. Tras el input debemos poner una variable.

ejemplo: 10 INPUT X

Podemos poner un texto (palabras, entre comillas, que nos recuerdan

el dato que el ordenador espera) entre el INPUT y la variable. Si un punto y

coma sigue al texto, entonces la interrogación aparece en la pantalla; si en su

lugar ponemos una coma, la interrogación no aparecerá.

INPUT (continuación)

Esto es lo que la instrucción INPUT hace en un programa:

|10 INPUT "Dime un valor para X" ; X~

|20 PRINT " X es igual a " X~

Teclee este programa, ejecútelo y vea lo que sucede. Después de hacerlo

cambie el punto y coma por una coma en la línea |10~, y haga un |RUN~. Para

ejecutar el programa de nuevo con un valor distinto en la variable, ponga |RUN~

de nuevo e introduzca un valor diferente para X.

Variables cadena (strings)

Las variables pueden representar tanto texto como números. Una variable

que representa una serie de caracteres se llama variable cadena.

El nombre de este tipo de variables se diferencian de las numéricas

porque al final de su nombre llevan el signo dólar.

ejemplo: |XYZ$~="Aula Informática IES Celestino Mutis"

Podemos asignar una cadena de caracteres a una variable string de la

misma manera que asignábamos un valor a una variable numérica.

Ejecutemos el siguiente programa:

|10 INPUT "Dime tu nombre ?";N$~

|20 PRINT "Me alegro de conocerte ";N$;", soy el ordenador personal ATLAS."~

Más sobre LET

Ahora que podemos introducir y sacar datos del ordenador, hagamos algo

interesante. Los cálculos matemáticos se hacen en BASIC con la instrucción

LET, que aprendimos en la primera lección. La instrucción LET asigna a una

variable una expresión numérica . A continuación vamos a conocer cuáles son los

operadores aritméticos y como se utilizan en BASIC.

SIMBOLO              DESCRIPCION             EJEMPLOS

|+~ suma A|+~B 6|+~12

|-~ resta A|-~B 23|-~7

|*~ multiplicación A|*~B 3|*~(2-1)

|/~ división A|/~B (8+2)|/~4

|^~ exponenciación A|^~B (5*3)|^~2

Más sobre LET (continuación)

Aquí tenemos dos ejemplos específicos de la utilización de LET.

CONVERSION CELSIUS A FAHRENHEIT

|10 LET F=1.8 * C + 32~

INTERES ANUAL

|10 INTERES=CANTIDAD*PORCENTAJE~

Intente escribir un programa que nos permita introducir una temperatura

en grados Celsius, la convierta a grados Fahrenheit y escriba el resultado (use

|INPUT~, |LET~ y |PRINT~ .) Recuerde, la versión BASIC de IBM permite la

omisión de la palabra LET si así se desea.

Más sobre LET (continuación)

Esta es una manera de escribir el programa anterior :

|10 INPUT "Introduzca la temperatura en grados Celsius.",C~

|20 F=1.8*C+32~

|30 PRINT F;" grados Fahrenheit son";C;"Celsius."~

El comando NEW

El comando |NEW~, |BORRA el programa que está en la memoria.

También borra los valores que se hayan asignado a las variables en un programa.

Siempre que vayamos a introducir un programa nuevo, debemos teclear NEW primero;

de no hacerlo así, las líneas del programa antiguo se mezclaran con el que

estemos introduciendo.

El formato del comando NEW es, simplemente, escribir NEW y pulsar RETURN.

Este comando no borra el programa del disco, solamente borra el

programa de la memoria del ordenador.

Instrucciones DATA y READ

Ya hemos aprendido a utilizar la instrucción INPUT.

Otra forma de introducir datos en el ordenador es con |DATA y |READ~.

La instrucción DATA no se ejecuta. La utiliza el ordenador cuando

ejecuta la instrucción READ. Después de la palabra DATA, podemos poner números

o grupos de letras, entre comillas, separados por comas. La línea de datos así

creada se lee de la siguiente manera:  La primera vez que el programa ejecuta

READ, se carga el primer dato de la línea DATA;  la segunda vez, el segundo,

etc.

Introduzca los siguientes programas de ejemplo y haga un |RUN~.

|10 DATA 7,11 10 DATA "LUIS","PERICO"~

|20 READ X 20 READ X$~

|30 PRINT X 30 PRINT X$~

|40 READ X 40 READ X$~

|50 PRINT X 50 PRINT X$~

Intrucciones DATA y READ (continuación)

Cuando el ordenador no tiene más datos que leer se produce un error,

el programa se para y aparece un mensaje de error.

Compruébelo con el siguiente programa:

|10 DATA 10,"Veinte"~

|20 READ X~

|30 PRINT 1,X~

|40 READ X$~

|50 PRINT 2,X$~

|60 READ X~

|70 PRINT 3,X~

Como no hay un tercer dato que leer, el ordenador se para y nos indica

que existe un error en la línea numero 60. Ejecútelo y vea lo que ocurre.

Instrucción GOTO

La instrucción |GOTO~ es de las más sencillas de comprender y una de

la más importantes en BASIC. Le dice al ordenador que vaya a un número de

línea diferente al siguiente que corresponda ejecutar.

En el siguiente programa, el ordenador estará dando vueltas en las

líneas 20, 30 y 40, hasta que no tenga mas datos que leer, dando un error.

Las instrucciones IF THEN.

Las instrucciones |IF THEN~ nos permiten elegir, entre dos opciones. |IF~ una

condición es verdadera el ordenador ejecuta lo que sigue a |THEN~, |IF~ |no

es verdadera, el ordenador ejecuta la línea siguiente. Normalmente un GOTO

suele seguir a THEN.

Mediante Operadores de relacion comparamos los dos valores de la

condición el las instrucciones IF THEN.

Los Operadores de Relación más comunes son los siguientes:

|=~ igual a < menor que |<=~ menor o igual que

|<>~ distinto de |>~ mayor que |>=~ mayor o igual que

Las instrucciones IF THEN

Poniendo, al final de la línea DATA , un número de control y utilizando

las instrucciones IF THEN tras el READ, podemos utilizar el número de control

para evitar el error: |Out of DATA. El siguiente programa calcula la media de

los números DATA especificados en DATA y utiliza, |99~, como: |fin de datos.

 Las instrucciones IF THEN

 Aquí tenemos dos ejemplos. Uno cuenta la cantidad de datos que hay en

una línea DATA. El otro escogerá los números que sean mayores de 50 en la

línea DATA , y los escribirá en la pantalla. En ambos casos el numero |999~

hace que se pare el programa. Escríbalos y haga un |RUN~.

|10 DATA 10,69,2,45,100,74,12,999 10 DATA 10,69,2,45,100,74,12,999~

|20 READ X 20 READ X~

|30 IF X=999 THEN GOTO 60 20 IF X=999 THEN STOP

|40 LET K=K+1 40 IF X<=50 THEN GOTO 20~

|50 GOTO 20 50 PRINT X~

|60 PRINT K 60 GOTO 20~

 Operadores Lógicos

Los |Operadores Lógicos ~, hacen mas útiles las instrucciones IF THEN.

Los operadores lógicos mas importantes en el BASIC de IBM son:

 |AND~, |OR~. -Y y O-

Los operadores: |AND~ y |OR~ se utilizan cuando queremos implantar

más de una condición en las instrucciones |IF THEN~ . Vamos a ver un ejemplo

de su utilidad en un programa. Primero escriba y haga un |RUN~, en el programa

siguiente. A continuación cambie los datos en la línea DATA y haga otro |RUN~.

|10 DATA 5,23,17,34,29,45,999~

|20 READ X~

|30 IF X=999 THEN GOTO 70~

|40 IF X<20 OR X>30 THEN LET A=A+1

|50 IF X>=20 AND X<=30 THEN LET B=B+1

|60 GOTO 20~

|70 PRINT A;"números menores que 20 o mayores que 30 y";~

|B;"entre 20 y 30."~

 La instrucción ELSE

 Otra opción de las instrucciones IF THEN es la sentencia ELSE.

Sin ELSE, el programa se saltará las instrucciones IF y THEN si la condición

establecida tras el IF no se cumple. Si la palabra ELSE sigue a IF THEN,

entonces se ejecuta lo que sigue a ELSE en vez de continuar con la siguiente

línea.

Aquí tenemos el último programa modificado para ver la instrucción ELSE

Introdúzcalo y haga un |RUN~.

 |10 DATA 5,23,17,34,29,45,999~

|20 READ X~

|30 IF X=999 THEN GOTO 60~

|40 IF X<20 OR X>30 THEN LET A=A+1 ELSE LET B=B+1

|50 GOTO 20~

|60 PRINT A;”números menores que 20 o mayores que 30 y";~

|B;"entre 20 y 30."~

 Líneas con instrucciones múltiples.

 Otra característica del BASIC es la utilización de instrucciones

múltiples en una línea. Podemos poner varias instrucciones en la misma línea

separándolas con dos puntos (|:~). Resulta muy útil con IF THEN.

Aquí tenemos un ejemplo que muestra este tipo de líneas.

Escríbalo y haga un RUN~, modifique los valores en la línea DATA y de nuevo

haga un |RUN~.

 |10 DATA 5,23,17,34,29,45,999~

|20 READ X~

|30 IF X=999 THEN PRINT A;"menores que 20,";B;"entre 20 y 30, y";C;~

"mayores que 30.":END

|40 IF X<20 THEN PRINT X;"es menor que 20.":LET A=A+1:GOTO 20~

|50 IF X<30 THEN PRINT X;"está entre 20 y 30.":LET B=B+1:GOTO 20

|60 PRINT X;"es mayor que 30.":LET C=C+1:GOTO 20~

 La instrucción REM

 La instrucción |REM, nos permite escribir notas aclaratorias dentro de

un programa. Estos comentarios son ignorados por el ordenador cuando encuentra

la instrucción REM, pero le facilitan al programador información del programa.

Las anotaciones aparecen cuando LISTAMOS en programa. Los comentarios pueden

comenzar, bien por la palabra: REM o por un apóstrofe: (|'~) .

 Aquí tenemos un ejemplo de la utilización de REM en un programa.

10 DATA 45,24,97,65,47,15,80,38,77,999

20 READ X:IF X=999 THEN 60 |'Si no hay mas datos va a 60.~

30 IF X>=50 THEN LET G=G+1 |'Cuenta los números mayores o iguales a 50.~

40 IF X<50 THEN LET L=L+1 |'Cuenta los números menores de 50.~

50 GOTO 20 |'Obtiene el siguiente numero.~

60 PRINT "De los numeros,";L;"son menores de 50 y";

70 PRINT G;"son mayores o iguales a 50."

Introduzca este programa y haga un |RUN~.

STOP y END

Existen cuatro maneras de parar la ejecución de un programa BASIC.

 1. El programa se para cuando no tiene mas líneas que ejecutar.

2. Con STOP. Cuando el ordenador encuentra un STOP el programa se

para y aparece en la pantalla:|Break in N~ (donde |N~ es la línea

en la que esta situado el STOP).

3. END. Es similar a STOP excepto en que el ordenador no escribe el

mensaje de interrupción.

4. Pulsando: |Ctrl~ y |Break~ (Scroll lock) simultáneamente, paramos

la ejecución de un programa y aparece el mensaje :|Break in N~

donde N es la línea donde se ha interrumpido el programa.

Si tecleamos |CONT~,el programa |continúa, ejecutándose a partir

del punto donde FUE INTERRUMPIDO.

CONT también funciona con STOP, pero no con END.

 STOP y END (continuacion)

 Veamos como funcionan estas instrucciones, |corriendo el siguiente

programa:

|10 PRINT "Escriba CONT y pulse return."

|20 STOP

|30 PRINT "BIEN! Ha continuado el programa."

|40 PRINT "Pulse Ctrl y Break simultaneamente!":GOTO 40~

 El comando EDIT

 Cuando cometemos (o descubrimos) un error en una línea, podemos

corregirlo, simplemente, escribiendo encima. Sin embargo es mucho mas rápido

utilizar el EDITor. Para esto, sencillamente, tecleamos |EDIT N~ (donde |N~ es

el número de línea que vamos a editar) y nos movemos con el cursor al punto

donde vamos a corregir, para escribir encima, insertar o borrar.

 Si lo que queremos es borrar una línea del programa, simplemente,

escribimos su número y pulsamos RETURN. Si son varias las líneas que vamos a

borrar, escribimos: |DELETE N1-N2 (donde |N1~ es la primera y |N2~ es la ultima

línea a borrar) y pulsamos RETURN. Esta instrucción borrará todas las líneas

entre |N1~ y |N2~, incluidas estas.

 El comando AUTO

 Con el fin de no perder tiempo, escribiendo el número de línea de cada

instrucción en un programa, podemos utilizar el comando |AUTO.

Al poner la palabra AUTO el ordenador numerara las líneas automáticamente .

 Esta es la forma correcta de poner el comando AUTO.

AUTO [|B~[,|I~]]

|B~ es el primer número de línea que escribirá el ordenador. Si no se

pone ningún valor para |B~ el ordenador, automáticamente, pondrá el numero 10

 |I~ es el incremento. Esto es, el valor que se le suma a cada línea

para obtener el número de línea siguiente. Al omitirlo, se incrementarán las

líneas de 10 en 10.

 AUTO (continuación)

 Si queremos comenzar nuestro programa por una línea que no sea la 10,

por ejemplo la 200; escribiremos AUTO 200 y nuestro programa empezará en la

línea 200 y se incrementará de 10 en 10. Si queremos comenzar por la línea

100 y en saltos de 5 en 5, escribiremos: AUTO 100,5.

Para terminar de introducir el programa, debemos pulsar |Ctrl~ y |Break~ al

aparecer la línea siguiente a la ultima.

 Introduzca el siguiente programa utilizando AUTO.

 |100 INPUT "Dime el primer numero"; A

|105 INPUT "Dime el segundo numero"; B

|110 PRINT A;"+";B;"=";A+B

|115 PRINT A;"-";B;"=";A-B

|120 PRINT A;"*";B;"=";A*B

 Los comandos TRON y TROFF

 Cuando un programa no funciona correctamente la primera vez que lo

ejecutamos, se dice que contiene errores (BUGS). La mayor parte del tiempo de un

programador se pierde depurando (debuging), un programa.

Una instrucción que nos facilita esta labor es el comando: |TRON~.

Al escribir TRON, antes de ejecutar un programa, aparece entre corchetes (|[]~)

el número de línea que se está ejecutando, junto con los textos de la ejecución

propia del programa.

Para el programa: |10 DATA 17,23,99~

|20 READ NUM

|30 IF NUM<>99 THEN PRINT NUM:GOTO 20~

|40 PRINT "FIN."

Utilizando TRON, lo

veríamos así: |[10][20][30] 17~

|[20][30] 23~

|[20][30][40]The END.

 Cuando hemos localizado el error y queremos ejecutar nuestro programa

sin que aparezcan los números de línea, tenemos que teclear: |TROFF~

Esto devuelve al ordenador a su modo normal de ejecución.

 TRON y TROFF (continuación)

 El siguiente programa, debe contar y escribir los números de la línea

DATA, pero por alguna razón, se vuelve loco al escribir el primer valor.

Utilizando: TRON y TROFF , localice y solucione el problema.

 |10 DATA 34,67,12,9,65,38,84,999~

|20 READ NUM:IF NUM=999 THEN GOTO 60~

|30 CON=CON+1

|40 PRINT "El valor del numero";CON;"es";NUM

|50 GOTO 30~

|60 PRINT "Hay";CON;"números en la línea DATA."

 Primero teclee el programa y haga un |RUN~. Tras unos segundos pulse

|Ctrl~ y |Break~ para parar el programa. Teclee TRON y RETURN para entrar en

el modo "TRAZADO". De nuevo |RUN~ y cuando localice el problema, pare de nuevo

el programa, corrija el programa y entre en el modo de "EJECUCION" con TROFF

para hacer un |RUN~ por tercera vez.

 TRON y TROFF (continuación)

 Aquí tenemos de nuevo el último programa. Afortunadamente, encontró

el problema en la línea |50~.

 10 DATA 34,67,12,9,65,38,84,999

20 READ NUM:IF NUM=999 THEN GOTO 60

30 CON=CON+1

40 PRINT "El valor del numero";CON;"es";NUM

|50 GOTO 30~

60 PRINT "Hay”;CON;”números en la línea DATA."

 En la línea debería poner |50 GOTO 20~. Tal como estaba, el programa

nunca leería un nuevo valor para la variable |NUM~, luego nunca leería |999~

para marcar el fin de programa.

 La función RND

 La función RND devuelve un número al azar entre el 0 y el 1.

Si queremos un número entre el 0 y el 100, simplemente multiplicamos RND por 100

 ejemplo- LET |X=RND [El valor de |X~ cumple que |0~ < |X~ <| 1~]

LET |Y=RND*100 [El valor de |Y~ cumple que |0 ~< |Y~ <| 100~]

Aquí tenemos un programa de ejemplo que nos pide el límite superior

y nos devuelve una serie de números al azar entre 0 y el límite.

Tendrá que utilizar |Ctrl~ y |Break~ para parar el programa.

 |10 INPUT "Introduzca el límite superior.",MAXIMO

|20 PRINT RND*MAXIMO

|30 GOTO 20~

 La función INT

 La función INT suprime la parte decimal de un número entre paréntesis

y devuelve su parte entera, redondeándola.

 ejemplo- |LET A=INT(9.2)~ [Aquí, |A~ vale: |9~]

|LET K=INT(7.6)~ [Aquí, |K~ vale: |8~]

Aquí tenemos un programa que utiliza RND e INT, conjuntamente.

De nuevo pulse |Ctrl~ y |Break~ para acabar el programa.

|10 NUMERO=RND*200-100 'genera un número entre -100 y 100

|20 PRINT "Cuál es la parte entera de";NUMERO;:INPUT RESPUESTA~

|30 IF RESPUESTA<>INT(NUMERO) THEN PRINT "La respuesta es";INT(NUMERO)~

|40 GOTO 10~

 La función ABS

 La función ABS devuelve el valor absoluto de una expresión.

El valor absoluto es sencillamente el valor positivo de un numero.

 example LET X=ABS(-5) [Aquí, |X~ es igual a |5~]

|LET C=ABS(12*4) [Aquí, |C~ es igual a |48~]

 Aquí tenemos un programa que utiliza las funciones RND, INT y ABS

De nuevo pulse |Ctrl~ y |Break~ , cuando quiera finalizar.

 |10 NUMERO=INT(RND*200-100) 'Genera un número entero entre -100 and 100

|20 PRINT "Cuál es el valor ABSOLUTO de";NUMERO;:INPUT RESPUESTA~

|30 IF RESPUESTA<>ABS(NUMERO) THEN PRINT "La respuesta es";ABS(NUMERO)~

|40 GOTO 10~

 Las funciones ABS e INT (continuación)

Aquí tenemos un programa muy interesante para los aficionados a las

Matemáticas. Calcula el Máximo Común Denominador de dos números.

 |10 INPUT "Dime el primer número.",NUM1

|20 INPUT "Dime el segundo.",NUM2

|30 NUM1=ABS(NUM1):NUM2=ABS(NUM2)~

|40 LET R=NUM1-NUM2*INT(NUM1/NUM2)~

|50 IF R=0 THEN GOTO 70~

|60 NUM1=NUM2:NUM2=R:GOTO 40~

|70 PRINT "El máximo común denominador es";NUM2

  

                                                                                               © 1991 Javier de Lucas Linares