Pascal/Turbo Pascal - necesito ayuda para ordenar canciones por genero

   
Vista:

necesito ayuda para ordenar canciones por genero

Publicado por luis (1 intervención) el 16/06/2014 23:02:54
ninoska tiene en su mp3 500 canciones de las cuales desea saber cuantas tiene por genero los generos son pop,rock,regueton,merengue,salsa,bachata. mostrar por pantalla cuantas canciones posee por genero y mostrar el resultado de mayor a menor.
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

necesito ayuda para ordenar canciones por genero

Publicado por ramon (2072 intervenciones) el 18/06/2014 00:08:13
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
{Esto te seria útil}
 
 program misica;
  uses
    crt;
  type
     string8 = string[8];
  const
     genero : array[1..6] of string8 = (
     'pop','rock','regueton','merengue','salsa','bachata');
 
   var
     musica : array[1..500] of string8;
     cont : integer;
 
   procedure cargamusica;
   var
     tom, pp : integer;
   begin
      randomize;
      pp := 1;
      tom := 0;
    repeat
       cont := random(17) + 1;
     case cont of
   1,3,5 : tom := 1;
   2,4,6 : tom := 2;
   8,10,7 : tom := 3;
   9,11,13 : tom := 4;
  14,16,18 : tom := 5;
 12,19,20 : tom := 6;
    end;
       musica[pp] := genero[tom];
       pp := pp + 1;
    until pp > 500;
   end;
 
   procedure cuenta_clases;
   type
     reg = record
         tipo : string8;
         valo : integer;
       end;
   var
     clases : array[1..6] of reg;
     oi, tr : integer;
     temp : reg;
   begin
      tr := 1;
      fillchar(clases,sizeof(clases),0);
      while tr < 501 do
      begin
     if musica[tr] = 'pop' then
     begin
     clases[1].valo := clases[1].valo + 1;
     clases[1].tipo := 'pop';
     end;
     if musica[tr] = 'rock' then
     begin
     clases[2].valo := clases[2].valo + 1;
     clases[2].tipo := 'rock';
     end;
     if musica[tr] = 'regueton' then
     begin
     clases[3].valo := clases[3].valo + 1;
     clases[3].tipo := 'regueton';
     end;
     if musica[tr] = 'merengue' then
     begin
     clases[4].valo := clases[4].valo + 1;
     clases[4].tipo := 'merengue';
     end;
     if musica[tr] = 'salsa' then
     begin
     clases[5].valo := clases[5].valo + 1;
     clases[5].tipo := 'salsa';
     end;
     if musica[tr] = 'bachata' then
     begin
     clases[6].valo := clases[6].valo + 1;
     clases[6].tipo := 'bachata';
     end;
     tr := tr + 1;
     end;
     for tr := 1 to 6 do
       for oi := 6 downto tr + 1 do
       if clases[tr].valo < clases[oi].valo then
       begin
          temp := clases[tr];
          clases[tr] := clases[oi];
          clases[oi] := temp;
       end;
     clrscr;
     writeln('    **** Los Resultados Son ****');
     writeln;
     writeln('    ',clases[1].tipo,' = ',clases[1].valo);
     writeln('    ',clases[2].tipo,' = ',clases[2].valo);
     writeln('    ',clases[3].tipo,' = ',clases[3].valo);
     writeln('    ',clases[4].tipo,' = ',clases[4].valo);
     writeln('    ',clases[5].tipo,' = ',clases[5].valo);
     writeln('    ',clases[6].tipo,' = ',clases[6].valo);
     writeln;
     writeln('   Pulse Una Tecla ');
   end;
 
 
 
 
  begin
     cargamusica;
     cuenta_clases;
     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