EXAMEN de BACHILLERATO de programación BASIC

Anuncio
EXAMEN de BACHILLERATO de programación BASIC -
IES DRAGO (03/03/05)
NOMBRE __________________________________________________CURSO __________
Realizar UN SOLO programa en BASIC que realice lo siguiente:
a) Borra la pantalla.
b) Mostrar en pantalla el siguiente menú hasta que e pulse un de las 3 teclas posibles:
MENU
---------1.- Estrellas
2.- Cuadrado
3.- Rebajas
Pulsa una opción
c) Dependiendo de tecla pulsada, hacer:
1) Mostrar un cielo estrellado formado por 3000 puntos blancos en posiciones
aleatorias a todo lo ancho y alto de pantalla.
2) Mostrar un cuadrado blanco de 50 puntos de lado y moverlo por pantalla con las
letras a -abajo- , q -arriba- , o -izquierda- , p -derecha-.
3) Borrar pantalla. Pedir una cifra inicial de euros. Pedir un porcentaje. Mostrar el
mensaje “Te ahorras …. euros y tendrás que pagar ….”, donde los primeros
puntos suspensivos es el descuento y los segundos es la cifra final a abonar.
SOLUCIÓN:
RANDOMIZE TIMER
CLS
PRINT " MENU"
PRINT " ----"
PRINT ""
PRINT "1.- Estrellas"
PRINT "2.- Cuadrado"
PRINT "3.- Rebajas"
PRINT ""
PRINT "Pulsa una opcion"
DO
a$ = INKEY$
LOOP WHILE a$ <> "1" AND a$ <> "2" AND a$ <> "3"
IF a$ = "1" THEN
SCREEN 12
FOR N = 0 TO 3000
CIRCLE (RND * 640, RND * 480), 0, 16
NEXT N
END IF
IF a$ = "2" THEN
SCREEN 12
X = 320
Y = 240
DO
a$ = INKEY$
IF a$ <> "" THEN
FOR N = 0 TO 50
CIRCLE (X + N, Y), 0, 0
CIRCLE (X + N, Y + 50), 0, 0
CIRCLE (X, Y + N), 0, 0
CIRCLE (X + 50, Y + N), 0, 0
NEXT N
END IF
IF a$ = "o" THEN X = X - 1
IF a$ = "p" THEN X = X + 1
IF a$ = "q" THEN Y = Y - 1
IF a$ = "a" THEN Y = Y + 1
IF a$ <> "" THEN
FOR N = 0 TO 50
CIRCLE (X + N, Y), 0, 16
CIRCLE (X + N, Y + 50), 0, 16
CIRCLE (X, Y + N), 0, 16
CIRCLE (X + 50, Y + N), 0, 16
NEXT N
END IF
LOOP WHILE a$ <> CHR$(27)
END IF
IF a$ = "3" THEN
CLS
INPUT "Cantidad"; cantidad
INPUT "Porcentaje"; porcentaje
descuento = cantidad / 100 * porcentaje
total = cantidad - descuento
PRINT "Te ahorras "; descuento; " euros y tendras que pagar "; total
END IF
Descargar