Page 166 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 166
cout << "\nPerulangan ke #" << i+1 << endl;
for (int j = 0; j < ukuranArray-i-1; j++) {
// menampilkan keadaan array
cetakArray(arr, ukuranArray);
// logika pertukaran
if (arr[j] > arr[j+1]) {
cout << "[" << arr[j] << ">" << arr[j+1] << "] Tukar\n";
tukar(&arr[j], &arr[j+1]);
}
}
}
cout << "\nHasil Akhir Pengurutan: " << endl;
cetakArray(arr, ukuranArray);
return 0;
} // akhir int main
void tukar(int *a, int *b){
int temp = *a;
*a = *b;
*b = temp;
}
Output:
void cetakArray(int array[], int ukuranArray){
for(int i = 0; i < ukuranArray; i++) {
Keadaan awal array
cout << array[i] << " ";
3 7 1 9 5
} cout << endl;
}
Perulangan ke #1
3 7 1 9 5
3 7 1 9 5
[7>1] Tukar
3 1 7 9 5
3 1 7 9 5
[9>5] Tukar
Perulangan ke #2
3 1 7 5 9
[3>1] Tukar
1 3 7 5 9
1 3 7 5 9
[7>5] Tukar
Perulangan ke #3
1 3 5 7 9
1 3 5 7 9
Perulangan ke #4
1 3 5 7 9
Hasil Akhir Pengurutan:
1 3 5 7 9
2. Contoh 2 – Program penggunaan selection sort
143