Selasa, 17 Juni 2014

Pengurutan data sederhana 2 (lanjutan)

Lanjutan... Pengurutan Data Sederhana

2. selection short

selection short merupakan salah satu teknik pengurutan sederhana selain bubble short yang sudah dibahas dipostingan sebelumnya, cara kerja selection short :

Penggalan program dengan pengguankan pemrograman pascal sbb :
  Uses crt;
  Const
       M: array[1..4] of Byte=(9,2,25,5);
  Var
       i,j,l,k,temp : byte;
  Bagin
  {cetak isi array sebelum pengurutan}
       For i : 1 to 4 do
           write(M[i]:3);
      writeln;
     {proses pengurutan dengan selection short)
     For i:= 1 to 4 do
     Begin
          k:= i;
          For j := i to 4 Do
              If (M[k]>M[j]) Then
                   k:= j;
          If(M[i]>M[k]) then
          Begin
               temp := M[i];
              M[i] := M[k];
              M[k] := temp;
          End;
     End;
     {cetak isi array setelah diurutkan}
     For i:= 1 to 4 do
        write(M[i]:3);
  End.

dengan menggunakan pemrogram C++ penggalan program sbb:
   main ( ){
      int M[4] = {9,2,25,5};
      int i,j,k,l,temp;
      for(i=0;i<4;i++){
         cout<<M[i]<<"\t\n";
     for(i=0;i<4;i++){
         k = i;
         for(j=i;j<4<j++){
            if(M[k]>M[j])
                k = j;
            if(M[i]>M[k]){
               temp = M[i];
               M[i] = M[k];
               M[k] = temp;
           }
      }
      for(i=0;i<4i++)
         cout<<M[i]<<"\t\n";
   }

Sekian....terima kasih
insertion short akan kita bahas pada tulisan berikutnya

Sabtu, 14 Juni 2014

Pengurutan Data

Teknik Pengurutan Data Sederhana

Sorting  data merupakan suatu proses (operasi) mengurutkan data dalam suatu aturan tertentu seperti dari yang terbesar ke terkecil (Descending) atau dari yang terkecil ke yang terbesar (ascending). secara umum metode pengurutan data dapat di bagi ke dalam 2 kelompok yaitu metode pengurutan sederhana (elementary shorting methode) dan metode pengurutan lanjut (advance shorting methode).
yang termasuk dalam pengurutan data sederhana diantaranya :
  • bubble short
  • selection short, dan
  • insertion shor
sedangkan yang termasuk dalam pengurutan lanjut :
  • shell short
  • quick short
  • marge short, dan
  • radix short
kita akan membahas satu persatu dari metode tersebut, dan untuk kali ini kita akan membahas tentang bubble short (metode gelembung). 

  1. Buble Short

proses kerja bubble short dapat diihat dari ilustrasi berikut
Flowchart
dalam pemrograman pascal dapat dibuat penggalan program sebagai berikut

Const
      M : array [1..4] Of Byte = (9,5,25,2);
Var
    i,j,temp : byte
Begin
    Write('Susunan angka sebelum diurutkan :');
    For i := 1 to 4 Do
        Write(M[i}:3); 
    Writeln;
    For i := 1 to 4 Do
        For j := i to 4 Do
            If (M[i] > M[j]) Then
            Begin
                 temp := M[i];
                 M[i] := M[j];
                 M[j] := M[i];
           End;
   Write(' susunan angka setelah diurutkan');
   For i := 1 to 4 Do
     Write(M[i]:3);
End.

dalam bahasa pemrograman C++ dapat dibuat penggalan programn sebagai berikut:

main ( ) {
  int M[4] = {9,5,25,2};
  int i,j, temp;
  cout<<"Susunan angka sebelum diurutkan :";
  for (i=0, i<4,i++)
      cout<<M[i]<<"\t";
  for (i=0,i<4,i++)
      for (j=i;j<4,j++) {
          temp = M[i];
          M[i] = M[j];
          M[j] = temp;
      }
cout<<"\n Susunan angka setelah diurutkan :";
for (i=0;i<4;i++)
    cout<<M[i]<<"\t";
}

pembahasan teknik pengurutan selanjutnya akan dibahas pada tulisan berikutnya.

Jumat, 13 Juni 2014

Algoritma Pencarian angka Maksimum dan Minimum

Tulisan pertama ini kita mulai dari algoritma pencariang angka maksimum dan minimum
dalam suatu deretan sejumlah angka.

1. Pencarian Angka Terbesar

Misalkan terdapat M = (2,9,3,15,10), dan  n = 5
maka untuk mencari angka terbesar diperoleh Max = 2
untuk i = 1,
                  jika M[2] > Max, maka Max <--M[2], dikarenakan 9 > 2 bernilai benar maka 
                                                                              diperoleh nilai Max yang baru yaitu 9
untuk i = 2,
                 jika M[3] > Max, maka Max <--M[3], dikarenakan 3 > 9 bernilai salah maka
                                                                          nilai Max tetap yaitu 9 (Max<--M[3] tidak dijalankan)
untuk i = 3,
                jika M[4] > Max, maka Max <--M[4], deikarenakan 15 > 9 bernilai benar, maka
                                                                            diperoleh nilai Max yang baru yaitu 15
untuk i = 4,
               jika M[5] > Max, maka Max <--M[5], dikarenakan 15 > 10 bernilai salah maka
                                                                          nilai Max tetap yaitu 15 (Max<--M[5] tidak dijalankan)
maka dari proses berjalan diperoleh angka Max = 15
dalam penggalan pemrograman pascal dapat dibuat sbb:

Const
       M : Array[1..5] Of Byte = (2,9,3,15,10);
Var
    i,Max : byte;
Begin
       Write ('Angka Terbesar Dari Deretan Angka - Angka ');
       For i := 1 to 5 do
            Write(M[i]:3);
      Max := M[1];
      For i := 1 to 5-1 do
            If (M[i] > Max) Then
                  Max := M[i];
     Writeln ('Adalah : ',Max);
End.

dalam penggalan pemrograman C++ dapat dibuat sbb:

main( ) {
    int M[5] = {2,9,3,15,10};
    int i, max;
   cout<<"Angka Terbesar dari Deretan Angka - Angka ";
   for (i = 0;i <= 5;i++)
       cout<<M[i]<<"\t";
  for (i = 0;i <= 4;i++)
      if ( M[i] > max)
          max = M[i];
 cout<<"Adalah : "<<max;
}

2. Pencarian Angka Terkecil


Misalkan terdapat M = (15,9,3,2,10), dan  n = 5
maka untuk mencari angka terbesar diperoleh Min = 15
untuk i = 1,
                  jika M[2] < Min , maka Min <--M[2], dikarenakan 9 < 15 bernilai benar maka 
                                                                              diperoleh nilai Min yang baru yaitu 9
untuk i = 2,
                 jika M[3] < Min, maka Min <--M[3], dikarenakan 3 < 9 bernilai benar maka
                                                                          diperoleh nilai Min yaitu 3
untuk i = 3,
                jika M[4] < Min, maka Min <--M[4], dikarenakan 2 < 3 bernilai benar, maka
                                                                            diperoleh nilai Min yang baru yaitu 2
untuk i = 4,
               jika M[5] < Min, maka Min <--M[5], dikarenakan 10 < 2 bernilai salah maka
                                                                          nilai Min tetap yaitu 2 (Min<--M[5] tidak dijalankan)
maka dari proses berjalan diperoleh angka Min = 2
dalam penggalan pemrograman pascal dapat dibuat sbb:

Const
       M : Array[1..5] Of Byte = (15,9,3,2,10);
Var
    i,Min : byte;
Begin
       Write ('Angka Terkecil Dari Deretan Angka - Angka ');
       For i := 1 to 5 do
            Write(M[i]:3);
      Max := M[1];
      For i := 1 to 5-1 do
            If (M[i] < Min) Then
                  Min := M[i];
     Writeln ('Adalah : ',Min);
End.

dalam penggalan pemrograman C++ dapat dibuat sbb:

main( ) {
    int M[5] = {15,9,3,2,10};
    int i, min;
   cout<<"Angka Terkecil dari Deretan Angka - Angka ";
   for (i = 0;i <= 5;i++)
       cout<<M[i]<<"\t";
  for (i = 0;i <= 4;i++)
       if (M[i] < min)
          min = M[i];
 cout<<"Adalah : "<<min;
}

Semoga Bermanfaat.........

Selamat Datang

Sebenarnya dah lama pengen buat blog ini tapi baru kesampaian sekarang,
tu juga dari sejak daftar pertama kali sejak 3 bulan yang lalu baru ini sempat di tulis.
hek...hek..hek..
pengennya sih ini jadi tempat kita berbagi 'n blajar bareng.
smoga bermanfaat....
hik....hik,,,,,,hik,,,,,