Senin, 26 Oktober 2015

Algoritma Bubble Sort

Algoritma Bubble Sort

Algoritma :

  1. Langkah pertama adalah membandingkan data ke-i dengan data ke-i+1 atau data setelahnya.
  2. Kemudian ketika data yang diberikan tidak sesuai, maka tukar (data ke-i adalah data ke-1+1 dan data ke-1+1 adalah data ke-i. Maksud data tidak sesuai adalah ketika kita menginginkan algoritma menghasilkan data dengan urutan ascending, kondisi yang tidak sesuai adalah data ke-i lebih besar data ke-i+1, dan sebaliknya untuk urutan descending.
  3. Membandingkan data ke-i+1 dengan data ke-i+2. Yaitu dengan membandingkan bilangan ini sampai data yang terakhir. Sebagai contoh : 1 dengan 2, 2 dengan 3, 3 dengan 4, 4 dengan 5, sampai seterusnya.
  4. Selesai satu iterasi, yaitu ketika kita sudah selesai membandingkan antara n+1 dengan n. Dan melanjutkan ke iterasi berikutnya seperti mulai dari data ke-1 dengan data ke-2, dan seterusnya.
  5. Proses akan berhenti jika tidak ada pertukaran dalam satu iterasi. Dan menghasilkan output berupa urutan data angka yang telah kita masukkan sebelumnya, secara ascending ataupun descending


Berikut contoh penggalan program Bubble Sort yang memiliki batasan.


#include<iostream>
using namespace std;

int main()
{
    int i, j, a, simpan, angka[50];

        cout<<"PROGRAM BUBBLE SORT BERBATAS"<<endl<<endl;
        cout<<"Masukkan batas : ";
        cin>>a;
    for (int i=0; i<a; i++){

        cout<<"Masukkan data angka : ";
        cin>>angka[i];
    }

    cout<<"Data sebelum diurutkan : "<<endl<<endl;
    for(i=0; i<a; i++){
        cout<<"  "<<angka[i];
    }
    cout<<endl;

    for(i=0; i<6; i++){
        for(j=i+1; j<a; j++)
        if(angka[i]>angka[j]){
            simpan=angka[i];
            angka[i]=angka[j];
            angka[j]=simpan;
        }
    }
cout<<"Data setelah diurutkan : "<<endl<<endl;
for(i=0; i<a; i++){
    cout<<"  "<<angka[i];
}
return 0;
}



Hasil output program :







Fachriza Agung
142406027


 

1 komentar:

  1. How to play Baccarat in Texas - Wolione
    When a player bets on which side the bettor expects to win the race, the 바카라 사이트 team that bets on the winner bets on which team 1xbet korean will win or place. septcasino

    BalasHapus