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