Page 262 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 262

int main() {
                    // Deklarasi variabel
                    int n; // Jumlah elemen dalam array
                    int array[100]; // Array untuk menyimpan data

                    // Meminta input jumlah elemen
                    cout << "Masukkan jumlah elemen array: ";
                    cin >> n;

                    // Meminta input data array
                    for (int i = 0; i < n; i++) {
                      cout << "Masukkan data ke-" << i + 1 << ": ";
                      cin >> array[i];
                    }

                    // Proses pengurutan
                    exchangeSort(array, n);

                    // Menampilkan hasil pengurutan
                    cout << "\nHasil pengurutan (ascending):" << endl;
                    for (int i = 0; i < n; i++) {
                      cout << array[i] << " ";
                    }
                    return 0;
                  }

                  Output:

                  Masukkan jumlah elemen array: 4
                  Masukkan data ke-1: 3
                  Masukkan data ke-2: 2
                  Masukkan data ke-3: 4
                  Masukkan data ke-4: 5

                  Hasil pengurutan (ascending):
                  2 3 4 5

                  Penjelasan:

                  1)  Fungsi exchangeSort:
                      •  Fungsi ini menerima dua parameter:

                          o  array: Array yang akan diurutkan (tipe int).

                          o  n: Jumlah elemen dalam array (tipe int).
                      •  Fungsi ini tidak memiliki nilai kembalian.

                      •  Algoritma bekerja dengan cara menandai adanya pertukaran elemen dalam array.
                          o  Variabel  swapped  diinisialisasi  dengan  true  untuk  menandakan  bahwa  pada

                             awalnya diasumsikan ada pertukaran.

                          o  Loop for luar (i) diulang sebanyak n - 1 kali. Di dalam loop ini, swapped diubah
                             menjadi false untuk menandakan bahwa pada iterasi ini, diasumsikan tidak ada

                             pertukaran.

                          o  Loop for dalam (j) diulang sebanyak n - i - 1 kali. Di dalam loop ini:

                                                                                                         239
   257   258   259   260   261   262   263   264   265   266   267