Pascal/Turbo Pascal - Juego matematico

   
Vista:

Juego matematico

Publicado por Pascal (1 intervención) el 20/11/2015 22:09:43
Hola que tal buenas tardes!
se me ocurrio una idea de realizar un juego matematico el cual consiste en mostrar ecuaciones matematicas al usuario que lo este jugando y que el usuario añada el numero o la operacion que hace falta para completar la ecuacion ,mi idea es que sean al azar esas ecuaciones, pero no se como implementarlo en pascal
me darian una mano? desde ya gracias saludos
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

Juego matematico

Publicado por ramon (2072 intervenciones) el 23/11/2015 17:23:06
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
{Mira esto}
 
 program ecuaciones;
  uses
    crt;
   const
     ecuacion : array[1..6] of string[84] = (
     'Area de un cilindro [ Falta A = (2 * (PI # r2)) + ((2 # PI * r) * h)]',
     'volumen de un  cilindro [ Falta V = (# * r2) * h]',
     'Area de un hexaedro [ Falta A = (l * #) * 6]',
     'volumen de un hexaedro [ Falta V = l#]',
     'Area de un prisma [ Falta A = (2 * (l1 * l2)) # (2 * (l1 * l3)) # (2 * (l2 * l3))]',
     'volumen de un elipsoide [ Falta V = (4 # 3) * PI * a * b * c ]');
 
     respuestas : array[1..6] of string[2] = (
     '*','pi','l','3','+','/');
 
  var
   respu : string[2];
   t, pregu : integer;
   laspregunt : array[1..6] of integer;
 
   procedure pregunta;
   var
     h : integer;
     sal : boolean;
   begin
     repeat
      pregu := random(30) + 1;
   case pregu of
  1,7,13,19,25,31 : pregu := 1;
  2,8,14,20,26 : pregu := 2;
  3,9,15,21,27 : pregu := 3;
  4,10,16,22,28 : pregu := 4;
  5,11,17,23,29 : pregu := 5;
  6,12,18,24,30 : pregu := 6;
  end;
      sal := true;
      for h := 1 to t do
      if pregu = laspregunt[h] then
      sal := false;
     until sal = true;
     t := t + 1;
     laspregunt[t] := pregu;
     clrscr;
     writeln('   La Pregunta Num ',pregu,' Es Que Falta En [#]');
     writeln('  ',ecuacion[pregu]);
     write('   La Respuesta Es : ');
     readln(respu);
     if respu = respuestas[pregu] then
     begin
     writeln('   Acierto Pulse Una Tecla');
     readkey;
     end
  else
     begin
        writeln('   Incorrecto Pulse Una Tecla');
        readkey;
        t := t - 1;
     end;
   end;
 
   procedure menu;
   var
     tre : char;
     sal : boolean;
   begin
      t := 0;
      randomize;
      fillchar(laspregunt,sizeof(laspregunt),0);
      sal := false;
     repeat
         clrscr;
         writeln('   ***** Menu De Juego *****');
         writeln;
         writeln('        [J] = Jugar');
         writeln('        [S] = Salir');
         writeln;
         writeln('        Elija Opcion');
       repeat
           tre := upcase(readkey);
       until tre in['J','S'];
       clrscr;
    case tre of
 'J' : begin
        if t = 6 then
        begin
        t := 0;
        fillchar(laspregunt,sizeof(laspregunt),0);
        end;
        pregunta;
       end;
 'S' : sal := true;
    end;
     until sal = true;
   end;
 
 
 
   begin
      menu;
   end.
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