Pascal/Turbo Pascal - Mensaje en movimiento mientras se ordenan los datos

   
Vista:

Mensaje en movimiento mientras se ordenan los datos

Publicado por nenchu nenchu_22@hotmail.com (1 intervención) el 13/05/2015 15:48:45
Holaa Buen Dia!
Es la primera vez que realizo una consulta, asi que espero hacerlo de la mejor manera posible.-

Mi profesor de Algoritmos nos dio como tarea realizar ordenamientos de vectores en Pascal, pero nos pidió que cuando el numero de datos a ordenar sea muy alto y pascal tarde en realizar el ordenamiento se vea en la pantalla algún tipo de mensaje en movimiento o barra? .. si alguien me puede guiar con esto.-

Desde ya muchas 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

Mensaje en movimiento mientras se ordenan los datos

Publicado por ramon (2072 intervenciones) el 15/05/2015 11:47:45
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
{Esto te ser vira }
 
program varra_de_espera;
 uses
    crt;
 
  const
     max = 20;
 
  type
     lamatriz = array[1..max] of integer;
 
  var
    matri : array[1..max] of lamatriz;
    n, h, t, k, da : integer;
    cont : integer;
 
  procedure varra(n : integer);
  begin
     textcolor(10);
     gotoxy(3 + n,24);write('Ý');
     textcolor(7);
  end;
 
 
  procedure cagamatriz;
  begin
     randomize;
     for k := 1 to max do
     begin
      for h := 1 to max do
      begin
      da := random(max * 2) + 1;
      matri[k][h] := da;
      end;
     end;
  end;
 
  procedure ordena_matriz;
  var
    tempo : array[1..(max * max)] of integer;
    g, tem, pa : integer;
  begin
      writeln('  **** Matriz Sin Ordenar ****');
      writeln;
      g := 0;
      pa := 1;
      for k := 1 to max do
      begin
        for h := 1 to max do
        begin
           tempo[pa] := matri[k][h];
           write(' ',matri[k][h]);
           pa := pa + 1;
        end;
          writeln;
      end;
 
       for k := 1 to pa - 1 do
       begin
         for h := k + 1 to pa - 1 do
         if tempo[k] > tempo[h] then
         begin
            tem := tempo[k];
            tempo[k] := tempo[h];
            tempo[h] := tem;
         end;
           g := g + 1;
           if n > 76 then
           begin
           for t := 3 to 76 do
           begin
           gotoxy(3 + t,24);write(' ');
           end;
           n := 1;
           end;
           if g > 10 then
           begin
           n := n + 1;
           varra(n);
           delay(25);
           g := 0;
           end;
         end;
         n := 1;
         for k := 1 to max do
         begin
          for h := 1 to max do
          begin
            matri[k][h] := tempo[n];
            n := n + 1;
          end;
        end;
       clrscr;
       writeln('   **** Matriz Ordenada ****');
       writeln;
       for k := 1 to max do
       begin
         for h := 1 to max do
         begin
            write(' ',matri[k][h]);
         end;
         writeln;
      end;
      writeln;
      writeln('  >>>> Pulse Una Tecla <<<<');
 
  end;
 
 
 
 
 
  begin
     clrscr;
     cagamatriz;
     ordena_matriz;
     readkey;
  end.
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