13.11.2012 Views

Usubterráneo. Sin embargo, su suerte cambia cuando - RetroWiki.es

Usubterráneo. Sin embargo, su suerte cambia cuando - RetroWiki.es

Usubterráneo. Sin embargo, su suerte cambia cuando - RetroWiki.es

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

NOTA: Los programas los verifico en un Spectrum y en GWBasic, pero al usar solo<br />

instruccion<strong>es</strong> <strong>es</strong>tándar del BASIC, deben funcionar en cualquier máquina, si tenéis<br />

cualquier problema, contactar conmigo y os pasaré las correccion<strong>es</strong> nec<strong>es</strong>arias para<br />

vu<strong>es</strong>tra máquina.<br />

n la entrada anterior pr<strong>es</strong>entamos la<br />

entrada/salida, con las instruccion<strong>es</strong> INPUT y<br />

EPRINT, y el uso general de variabl<strong>es</strong>, pero el<br />

programa se iba ejecutando siempre linealmente,<br />

siguiendo lo que se denomina <strong>su</strong> flujo. Cualquier<br />

alteración en el recorrido del programa se denomina<br />

un control del flujo, y <strong>es</strong> lo que veremos en <strong>es</strong>te<br />

artículo.<br />

La instrucción de control de flujo más sencilla <strong>es</strong> el IF,<br />

que tiene una pregunta, y en función de si se cumple o<br />

no hace una u otra cosa. La sintaxis de <strong>es</strong>ta instrucción<br />

<strong>es</strong> IF condición THEN acción<br />

·Condición <strong>es</strong> una pregunta, si el re<strong>su</strong>ltado de la<br />

pregunta se cumple (<strong>es</strong> cierto), entonc<strong>es</strong> se ejecuta la<br />

acción, si no se cumple (<strong>es</strong> falso), entonc<strong>es</strong> se pasa<br />

directamente a la siguiente línea del programa. Por<br />

ejemplo la pregunta puede ser si el contenido de<br />

variable <strong>es</strong> igual a un valor o al contenido de otra<br />

variable, si <strong>es</strong> diferente, si <strong>es</strong> mayor o menor.<br />

·Acción <strong>es</strong> una instrucción que se ejecutará solo si se<br />

cumple la condición. Hay version<strong>es</strong> del BASIC que<br />

permiten ejecutar varias instruccion<strong>es</strong>, como el<br />

Spectrum.<br />

Vamos con un ejemplo, que <strong>es</strong> lo más sencillo para<br />

aclarar las cosas, pediremos dos números y una<br />

operación, y en función de ella sacaremos el<br />

re<strong>su</strong>ltado:<br />

210 INPUT valor1<br />

220 PRINT<br />

230 PRINT "Introduzca el segundo valor: ";<br />

240 INPUT valor2<br />

250 PRINT<br />

260 PRINT "Que operacion d<strong>es</strong>ea (1=+, 2=-, 3=*,<br />

4=/): ";<br />

270 INPUT operacion<br />

280 PRINT<br />

290 PRINT<br />

300 REM Pr<strong>es</strong>entar el re<strong>su</strong>ltado<br />

310 IF operacion=1 THEN PRINT "Suma: ";<br />

valor1+valor2<br />

320 IF operacion=2 THEN PRINT "R<strong>es</strong>ta: "; valor1valor2<br />

330 IF operacion=3 THEN PRINT "Producto: ";<br />

valor1*valor2<br />

340 IF operacion=4 THEN PRINT "Division: “;<br />

valor1/valor2<br />

En la línea 260 pedimos un número, que repr<strong>es</strong>enta la<br />

operación a ejecutar, y luego en las líneas 310 a 340<br />

preguntamos si la operación introducida <strong>es</strong> la que<br />

<strong>es</strong>pero, entonc<strong>es</strong> imprimo el re<strong>su</strong>ltado, si no <strong>es</strong> la que<br />

<strong>es</strong>pero no hago nada. Podemos hacer lo mismo con<br />

re<strong>su</strong>ltados alfabético, solo <strong>cambia</strong> <strong>es</strong>to (recordar que<br />

en el Spectrum hay que poner o$ en lugar de<br />

operacion$<br />

260 PRINT "Que operacion d<strong>es</strong>ea (+ - * /): ";<br />

270 INPUT o$<br />

280 PRINT<br />

290 PRINT<br />

100 REM --------------------------- 300 REM Pr<strong>es</strong>entar el re<strong>su</strong>ltado<br />

110 REM Calculadora. J.A.Vaque 2011 310 IF o$=”+” THEN PRINT "Suma: "; valor1+valor2<br />

120 REM --------------------------- 320 IF o$=”-“ THEN PRINT "R<strong>es</strong>ta: "; valor1-valor2<br />

130 REM 330 IF o$=”*” THEN PRINT "Producto: ";<br />

140 REM Preparar la pantalla valor1*valor2<br />

150 CLS 340 IF o$=”/” THEN PRINT "Division: “; valor1/valor2<br />

160 PRINT "Calculadora simple. Version 2.0"<br />

170 PRINT "*******************************"<br />

180 PRINT<br />

190 REM Introducir valor<strong>es</strong><br />

200 PRINT "Introduzca el primer valor: ";<br />

La instrucción tiene una variante, IF condición<br />

THEN acción1 ELSE acción2, se ejecuta la acción1<br />

si se cumple la condición, o la acción 2 si no se<br />

cumple. Por ejemplo podemos usar:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!