Page 247 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 247

•  Fungsi ini merupakan titik awal program.
                      •  Mendeklarasikan variabel:
                          o  n: Jumlah elemen dalam array (tipe int).
                          o  array: Array untuk menyimpan data (tipe int).
                      •  Meminta input dari pengguna:
                          o  Jumlah elemen array (n).
                          o  Nilai-nilai elemen array (sebanyak n elemen).
                      •  Memanggil fungsi  insertionSort untuk mengurutkan array dengan parameter array dan
                         jumlah elemen.
                      •  Menampilkan hasil pengurutan:
                          o  Array yang telah diurutkan (ascending) ditampilkan elemen per elemen.

                  5.  Program
                  #include <iostream>

                  using namespace std;

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

                    for (int i = 0; i < n - 1 && swapped; i++) { // Loop baris
                      swapped = false; // Asumsi awal tidak ada pertukaran pada iterasi ini
                      for (int j = 0; j < n - i - 1; j++) { // Loop kolom
                        if (nilaiUjian[j] > nilaiUjian[j + 1]) { // Bandingkan nilai
                          swap(nilaiUjian[j], nilaiUjian[j + 1]); // Tukar nilai
                          swapped = true; // Tandai adanya pertukaran
                        }
                      }
                    }
                  }

                  int main() {
                    int n; // Jumlah siswa
                    cout << "Masukkan jumlah siswa: ";
                    cin >> n;

                    int nilaiUjian[n]; // Array untuk menyimpan nilai ujian
                    cout << "Masukkan nilai ujian siswa (dipisahkan dengan spasi): ";
                    for (int i = 0; i < n; i++) {
                      cin >> nilaiUjian[i];
                    }

                    exchange_sort(nilaiUjian, n); // Mengurutkan nilai ujian

                    cout << "\nHasil pengurutan nilai ujian (ascending):" << endl;
                    for (int i = 0; i < n; i++) {
                      cout << nilaiUjian[i] << " ";
                    }

                    return 0;
                  }





                                                                                                         238
   242   243   244   245   246   247   248   249