Metodo de Ordenacion : Burbuja

Publicado por Abraham Zamudio Chauca 16/01/2006

[ Hits: 3.622 ]

Download BURBUJA1.PAS




el presente programa implementa el conocido algoritmo de ordenacion :
burbuja .

  



Esconder código-fonte

Program Burbuja1;
Uses Crt;
Type Vector=array[1..2000] of Real;

Var
n,i,j:integer;
b:Vector;
opc1,opc2:Char;
aux:real;

Function Max(a,b:Real):Real;
Begin
If a<=b Then max:=b
Else max:=a;
End;

Function Min(a,b:Real):Real;
Begin
If a<=b Then min:=a
Else min:=b;
End;

Procedure leer(n:Integer;var a:vector);
Var i:integer;
Begin
For i:=1 to n do
 Begin
 Writeln('Ingrese el Elemento N£mero ',i);
 Readln(a[i]);
 End;
End;

Procedure escr(a:Vector;n:Integer);
Var i:Integer;
Begin
for i:=1 to n do
  Begin
  If i<n Then Write(a[i]:1:1,'; ')
  Else
    Begin
    Writeln(a[i]:1:1);
    Writeln(n,' Elementos');
    End;
  End;
End;


Begin
Repeat
Begin{*}
clrscr;
Writeln('Ingrese el N£mero de Elementos');
Readln(n);
leer(n,b);
Writeln('¨Quiere Ordenarlos en Forma Ascendente(A) o Descendente(D)?');
opc1:=Readkey;
If (opc1='a') or (opc1='A') Then
 Begin{**}
 For I:=1 to (n-1) do
   Begin{* *}
   for j:=2 to (n-i+1) do
    Begin
    aux:=b[j];
    b[j]:=max(b[j-1],b[j]);
    b[j-1]:=min(b[j-1],aux);
    End;
   End;{* *}
 End{**}
Else
 Begin{***}
 For i:=1 to (n-1) do
   Begin{* * *}
   for j:=2 to (n-i+1) do
    Begin
    aux:=b[j];
    b[j]:=min(b[j-1],b[j]);
    b[j-1]:=max(b[j-1],aux);
    End;
   End;{* * *}
 End;{***}
Writeln('La Lista Ordenada es:');
escr(b,n);

Writeln('¨Desea Realizar Otra Operaci¢n (S/N)?');
opc2:=Readkey;
End;{*}
Until (opc2='n')or(opc2='N');


End.

Scripts recomendados

intercalar dois arrays (vetores)

Primo

Exemplo de for que mostra 6 números em ordem crescente

Operações básicas da matemática

Calculadora básica em Pascal


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts