Pages

Monday, October 17, 2011

Mengurutkan data secara ascending dengan Pascal

Listing program :
uses crt;
type
  arr= array[1..50]of byte;
var
  i: byte;
  data: arr;
  max: byte;

procedure input;
begin
  clrscr;
  write('Masukkan banyak data = ');
  readln(max);
  clrscr;
  writeln('Masukkan ',max,' data');
  writeln('=====================');
  for i:= 1 to max do
  begin
    write('Data ke-',i,'= ');
    readln(data[i]);
  end;
  clrscr;
  for i:= 1 to max do
    write(data[i], ' ');
  writeln;
  writeln('****************************');
  writeln('Data yang telah diurutkan : ');
end;

procedure change(var a,b:byte);
var
  c: byte;
begin
  c:= a;
  a:= b;
  b:= c;
end;


procedure selection(var temp:arr; jmldata:integer);
var
  i,j,lok: byte;
begin
  for i:=1 to (jmldata-1) do
  begin
    lok := i;
    for j:=(i+1) to jmldata do
      if (temp[lok] > temp[j]) then lok := j;
        change(temp[i],temp[lok]);
  end;
end;

procedure output;
begin
  writeln;
  writeln('Ascending : ');
  for i:= 1 to max do
    write(data[i],' ');
  writeln;
end;

begin
  input;
  selection(data,max);
  output;
  readkey;
end.

output yang dihasilkan adalah :


Kemudian user memasukkan banyaknya data sesuai dengan kenginan user. Disini user menginput 6 data.


 
Setelah itu program akan meminta user untuk memasukkan ke-6 data tersebut.

 
Misalnya ke-6 data tersebut adalah sebagai berikut :


Setelah data diinput kemudian user menekan enter, maka akan tampil data-data yang telah diurutkan dari data yang sebelumnya. Data tersebut akan ditampilkan secara ascending (dari yang terkecil ke data yang terbesar).

2 comments:

  1. nah kalo dari yang besar bagaimana gan,....?
    bantu ane ya

    ReplyDelete
  2. gan ane mo nanya nih...
    kalo mo cari data dari hasil yang sudah diurutkan gmn gan?

    ReplyDelete