QuickBasic - JUEGO ADIVINAR NOTAS MUSICALES

 
Vista:
sin imagen de perfil
Val: 3
Ha mantenido su posición en QuickBasic (en relación al último mes)
Gráfica de QuickBasic

JUEGO ADIVINAR NOTAS MUSICALES

Publicado por David (2 intervenciones) el 09/06/2019 17:05:19
Estoy intentando crear un juego para aprender las notas musicales.

Mediante generación de números aleatorios (por ahora del 0 al 2) el programa reproduce una nota y se tiene que escribir la letra que corresponde a esa nota según el cifrado ABCD, esto se repite hasta que el número de aciertos llega a 10, o el número de errores llega a 3; el problema es que siempre reproduce el mismo sonido

¿Podría alguien ayudarme?, adjunto el archivo .bas comprimido por si alguien ve el error. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 13
Ha mantenido su posición en QuickBasic (en relación al último mes)
Gráfica de QuickBasic

JUEGO ADIVINAR NOTAS MUSICALES

Publicado por dario (2 intervenciones) el 11/06/2019 11:42:02
Tiempo que no usaba QBasic.
Este es tu mismo codigo, pero arreglado.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
DIM x AS INTEGER
DIM nota AS INTEGER
DIM aciertos AS INTEGER
DIM errores AS INTEGER
DIM sel AS STRING
PRINT
 
PRINT "ADIVINA QUE NOTA ESTA SONANDO"
PRINT "C: DO"
PRINT "D: RE"
PRINT "E: MI"
PRINT "F: FA"
PRINT "G: SOL"
 
RANDOMIZE TIMER
DO
    FOR x = 1 TO 10
        nota = INT(RND * 3)
        SELECT CASE nota
            CASE 0
                PLAY "c"
                INPUT sel
                IF sel = "C" THEN
                    aciertos = aciertos + 1
                    PRINT "aciertos = "; aciertos
                ELSE
                    errores = errores + 1
                    PRINT "errores = ", errores
                END IF
            CASE 1
                PLAY "d"
                INPUT sel
                IF sel = "D" THEN
                    aciertos = aciertos + 1
                    PRINT "aciertos = "; aciertos
                ELSE
                    errores = errores + 1
                    PRINT "errores = ", errores
                END IF
            CASE 2
                PLAY "e"
                INPUT sel
                IF sel = "E" THEN
                    aciertos = aciertos + 1
                    PRINT "aciertos = "; aciertos
                ELSE
                    errores = errores + 1
                    PRINT "errores = ", errores
                END IF
        END SELECT
    NEXT x
LOOP UNTIL aciertos > 9 OR errores > 2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 3
Ha mantenido su posición en QuickBasic (en relación al último mes)
Gráfica de QuickBasic

JUEGO ADIVINAR NOTAS MUSICALES

Publicado por David (2 intervenciones) el 20/06/2019 11:07:11
Gracias, la verdad es que se ve mucho mejor así; ya había resuelto el problema de las notas aleatorias. Ahora estoy intentando que el contador funcione, de forma que cuando los errores sean 3 se acabe y si no hay errores que llegue sólo hasta 10.

¿Tienes idea de cómo podría hacerse?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar