Metodo de Ordenacion : Burbuja

Publicado por Abraham Zamudio Chauca 16/01/2006

[ Hits: 3.245 ]

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

Programa que realiza o reajuste salarial de acordo com o cargo

soma de números pares

Sequência de Fibonacci

Cauculadora em Pascal

Tratar campos not null


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts