Berikut adalah contoh program sorting dengan C++ yang menggunakan metode Exchange Sort. Agak berbeda dengan yang ada pada umumnya, di source code ini aku tambahkan script yang dapat mengukur lamanya waktu saat proses Sorting, tentunya dengan data yang tidak sedikit baru estimasi / alokasi waktunya terlihat berapa detik proses sorting tersebut berlangsung.
#include<iostream> #include<time.h> /* ===================================== Program Sorting Data - Exchange Sort - Rendra Kurniawan ( 06.2009.1.04900 ) ========================================*/ using namespace std; int main(int argc, char *argv[]){ int nInput, i=0, j; cout << "Berapa banyak inputan angka yang Anda ingin input ? "; cin >> nInput; // cek apakah yang diinput benar angka if(!cin.fail()){ int kumpulanAngka[nInput]; int tempKumpulanAngka[nInput]; int swapExchange; time_t awal, akhir; // proses input data dan simpan data for(i;i<nInput;i++){ cout << "\nMasukkan angka ke - " << (i+1) << " : "; cin >> kumpulanAngka[i]; if(cin.fail()){ kumpulanAngka[i] = 0; } tempKumpulanAngka[i] = kumpulanAngka[i]; } // proses sorting dengan metode exchange sort awal = time(NULL); for(i=0;i<nInput;i++){ for(j=(i+1);j<nInput;j++){ if(kumpulanAngka[i]>kumpulanAngka[j]){ swapExchange = kumpulanAngka[j]; kumpulanAngka[j] = kumpulanAngka[i]; kumpulanAngka[i] = swapExchange; } } } akhir = time(NULL); double lamaWaktu = akhir - awal; cout <<endl<<endl << "Kumpulan data sebelum diurutkan : "<<endl; for(i=0;i<nInput;i++){ cout << tempKumpulanAngka[i] << " "; } cout <<endl<<endl << "Kumpulan data setelah diurutkan : "<<endl; for(i=0;i<nInput;i++){ cout << kumpulanAngka[i] << " "; } cout <<endl<<endl << "Lama waktu yang dibutuhkan sorting sekitar " << lamaWaktu << " detik"; cout <<endl<<endl; }else{ cout << "Maaf, inputan harus berupa angka"; } system("pause"); return EXIT_SUCCESS; }