Pascal/Turbo Pascal - ayuda con vector

   
Vista:

ayuda con vector

Publicado por fernando (5 intervenciones) el 15/07/2013 15:50:24
si un vector tiene 20 elementos almacenados. Diseñe un algoritmo que escriba "SI" si el vector esta ordenado ascendentemente o "NO" si no esta ordenado.
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

ayuda con vector

Publicado por ramon (2072 intervenciones) el 16/07/2013 13:43:48
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
{Mira a qui tienes un ejemplo}
 
 program enordenvector;
 uses
    crt;
  const
     nvec = 20;
  type
     elvector = array[1..nvec] of integer;
  var
    h, t : integer;
    vector : elvector;
 
  procedure cargavalores;
  var
    valor, tomado : integer;
  begin
     randomize;
     tomado := 1;
     fillchar(vector,sizeof(elvector),0);
   repeat
        valor := random(40) + 1;
        vector[tomado] := valor;
        tomado := tomado + 1;
   until tomado > nvec;
  end;
 
  procedure muestravector;
  var
    m : integer;
  begin
     for m := 1 to nvec do
     write(' ',vector[m]);
  end;
 
  procedure ordenavector;
  var
    g, u, aut : integer;
   begin
      for g := 1 to nvec - 1 do
      begin
        for u := nvec downto g + 1 do
        begin
        if vector[g] > vector[u] then
        begin
           aut := vector[u];
           vector[u] := vector[g];
           vector[g] := aut;
        end;
       end;
     end;
   end;
 
   begin
      clrscr;
      cargavalores;
      t := 0;
      for h := 1 to nvec - 1 do
      begin
      if vector[h] > vector[h + 1] then
      begin
      writeln('  No ');
      t := 10;
      break;
      end;
    end;
      if t = 0 then
      writeln(' Si ');
      writeln;
      muestravector;
      writeln;
      ordenavector;
      writeln;
      t := 0;
      for h := 1 to nvec - 1 do
      begin
      if vector[h] > vector[h + 1] then
      begin
      writeln('  No ');
      t := 10;
      break;
      end;
    end;
      if t = 0 then
      writeln('  Si ');
      writeln;
      muestravector;
      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
1
Comentar

ayuda con vector

Publicado por fernando (5 intervenciones) el 16/07/2013 15:09:49
muchas gracias
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