Ordenamiento Burbuja

program Burbuja;
uses CRT,chuchox;
 
 
Var
   Vec    :       V2;
   J,I,aux,h,x :       Integer;
   entro       :       Boolean;
 
 
Procedure Burbu;
Begin
      For J:=1 to 9 do
         Begin
            entro:=false;
            For I:=1 to 9 do
                Begin
                   If Vec[I] > Vec[i+1] then
                     Begin
                       Aux:=Vec[i];
                       Vec[i]:=Vec[I+1];
                       Vec[I+1]:=Aux;
                       Entro:=True;
                       display(Vec,H);
                       h:=h+3;
                     End;
                End;
            If entro=False then J:=9;
         End;
End;
 
 
Begin
   Clrscr;
   h:=1;
   Randomize;
   Llenar(vec,vec);
   Burbu;
   GotoXY(1,15);Writeln('Metodo Burbuja');
   Repeat Until Keypressed;
End.
 
{
*****************************************
Archivo CHUCHOX.TPU
*****************************************
}
 
UNIT Chuchox;
INTERFACE
  Uses Crt;
  Type
      V2    =   Array[1..10] of integer;
   Var
      Con   :   Integer;
      Vec   :   Array[1..10] of integer;
 
      Procedure Llenar(vec:V2; Var Vec2:V2);
      Procedure Display(V:V2; hh:Integer);
 
IMPLEMENTATION
       Procedure Llenar(vec:V2; Var Vec2:V2);
         Begin
           For Con:=1 to 10 do Vec[Con]:=Random(100);
            Vec2:=Vec;
 
           End;
       Procedure Display(V:V2; hh:Integer);
         Begin
           For Con:=1 to 10 do
             Begin
               GotoXY(hh,Con);Writeln(V[Con]);
               Delay(150)
             End;
 
         End;
Begin
  Randomize;
End.
 
{
*****************************************
Archivo CHUCHOX.PAS
*****************************************
}
UNIT Chuchox;
INTERFACE
  Uses Crt;
  Type
      V2    =   Array[1..10] of integer;
   Var
      Con   :   Integer;
      Vec   :   Array[1..10] of integer;
 
      Procedure Llenar(vec:V2; Var Vec2:V2);
      Procedure Display(V:V2; hh:Integer);
 
IMPLEMENTATION
       Procedure Llenar(vec:V2; Var Vec2:V2);
         Begin
           For Con:=1 to 10 do
              Begin
                Vec[Con]:=Random(100);
              End;
                Vec2:=Vec;
 
 
         End;
       Procedure Display(V:V2; hh:Integer);
         Begin
           For Con:=1 to 10 do
             Begin
               GotoXY(hh,Con);Writeln(V[Con]);
               Delay(150)
             End;
 
         End;
Begin
  Randomize;
End.

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que crees que te he ignorado: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios así como también cambiar mis condiciones en el momento que yo lo requiera.

¿Si estas de acuerdo? Adelante! que ya te he quitado bastante tiempo leyendo esta basura :)

Comentarios

2007-11-23 10:35:51
Bubble Sort (Intercambio directo)
[...] Implementación en Turbo Pascal [...]