Page 261 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 261

}
                    }

                    // Menampilkan hasil pencarian
                    if (ditemukan) {
                      cout << "Data " << cari << " ditemukan pada indeks ke-" << mid <<
                  endl;
                    } else {
                      cout << "Data " << cari << " tidak ditemukan dalam array" << endl;
                    }

                    return 0;
                  }
                  Output:

                  Masukkan jumlah angka yang ingin diurutkan: 5
                  Masukkan angka ke-1: 6
                  Masukkan angka ke-2: 8
                  Masukkan angka ke-3: 9
                  Masukkan angka ke-4: 2
                  Masukkan angka ke-5: 4
                  Hasil pengurutan (dari terkecil ke terbesar):
                  2 4 6 8 9


                  3.  Berikut adalah langkah-langkah algoritma exchange sort:
                      •  Iterasi: Lakukan perulangan sebanyak n - 1 kali, di mana n adalah jumlah elemen dalam

                         array.

                      •  Perbandingan: Pada setiap iterasi, bandingkan elemen pada indeks i dengan elemen
                         pada indeks i + 1.

                      •  Penukaran: Jika elemen pada indeks i lebih besar dari elemen pada indeks i + 1, tukar
                         posisinya.

                      •  Pengecekan  Pertukaran:  Setelah  setiap  iterasi,  periksa  apakah  ada  pertukaran  yang

                         terjadi. Jika tidak ada pertukaran, hentikan algoritma karena array sudah terurut.
                  Program

                  #include <iostream>
                  using namespace std;

                  void exchangeSort(int array[], int n) {
                    bool swapped = true; // Bendera untuk menandakan adanya pertukaran

                    for (int i = 0; i < n - 1 && swapped; i++) {
                      swapped = false; // Asumsi awal tidak ada pertukaran pada iterasi ini
                      for (int j = 0; j < n - i - 1; j++) {
                        if (array[j] > array[j + 1]) {
                          swap(array[j], array[j + 1]);
                          swapped = true; // Tandai bahwa ada pertukaran
                        }
                      }
                    }
                  }

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

                    // Meminta input jumlah elemen
                    cout << "Masukkan jumlah elemen array: ";
                    cin >> n;
   256   257   258   259   260   261   262   263   264   265   266