Page 263 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 263

▪  Pernyataan if membandingkan nilai pada indeks j dan j + 1.
                              ▪  Jika nilai pada j lebih besar dari j + 1, lakukan penukaran nilai menggunakan

                                  fungsi swap.

                              ▪  Setelah penukaran, variabel swapped diubah menjadi true untuk menandakan
                                  bahwa pada iterasi ini ada pertukaran.

                      •  Loop for luar akan terus berjalan selama swapped bernilai true. Artinya, loop akan

                         terus berjalan selama masih ada pertukaran elemen dalam array.
                      •  Algoritma ini berhenti ketika swapped menjadi false, menandakan bahwa tidak ada

                         lagi pertukaran dan array sudah terurut.
                  2)  Fungsi main:

                      •  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 exchangeSort untuk mengurutkan array dengan parameter array dan

                         jumlah elemen.

                      •  Menampilkan hasil pengurutan:
                          o  Array yang telah diurutkan (ascending) ditampilkan elemen per elemen.

                  4.  Langkah-langkah Algoritma:
                      •    Iterasi: Lakukan perulangan sebanyak n - 1 kali, di mana n adalah jumlah elemen

                           dalam array.

                      •    Penyisipan:  Pada  setiap  iterasi,  ambil  elemen  pada  indeks  i  (elemen  yang  akan
                           disisipkan).

                      •    Perbandingan:  Bandingkan  elemen  yang  akan  disisipkan  dengan  elemen-elemen
                           dalam array yang telah terurut (dari indeks j = i - 1 ke bawah).

                      •    Pergeseran:  Jika  elemen  yang  akan  disisipkan  lebih  kecil  dari  elemen  yang

                           dibandingkan,  geser  elemen-elemen  dalam  array  ke  kanan  (satu  indeks)  untuk
                           membuat ruang.

                      •    Penyisipan: Sisipkan elemen yang akan disisipkan pada posisinya yang benar dalam

                           array.

                                                                                                         240
   258   259   260   261   262   263   264   265   266   267   268