Page 234 - MODUL ALGORTIMA DAN PEMROGRAMAN
P. 234

// Menambahkan nilai sentinel di akhir array
                    data[n] = cari; // Asumsi nilai sentinel sama dengan nilai yang dicari
                    n++; // Perbarui jumlah elemen array (termasuk sentinel)

                    // Melakukan pencarian sequential search sentinel
                    int i = 0;
                    while (data[i] != cari && i < n) {
                      i++;
                    }

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

                    return 0;
                  }

                  Output:
                  Masukkan jumlah elemen array: 4
                  Masukkan nilai elemen ke-1: 4
                  Masukkan nilai elemen ke-2: 7
                  Masukkan nilai elemen ke-3: 6
                  Masukkan nilai elemen ke-4: 8
                  Masukkan nilai yang ingin dicari: 4
                  Data 4 ditemukan pada indeks ke--1

                  Penjelasan:

                  1)  Deklarasi variabel:

                      •    n: Untuk menyimpan jumlah elemen array.
                      •    data: Array integer untuk menyimpan data yang akan dicari.
                      •    cari: Nilai integer yang ingin dicari dalam array.
                  2)  Meminta input nilai yang ingin dicari:
                      •    Sebuah loop for digunakan untuk meminta input nilai-nilai elemen array dari pengguna
                           satu per satu.
                  3)  Menambahkan nilai sentinel di akhir array:
                      •  Nilai cari (nilai yang ingin dicari) ditambahkan sebagai elemen terakhir array (data[n]).
                      •  Jumlah elemen array (n) diperbarui untuk menyertakan elemen sentinel.
                  4)  Melakukan pencarian sequential search sentinel:
                      •  Loop while digunakan untuk mencari nilai cari dalam array data.
                      •  Kondisi loop:
                          o  data[i] != cari: Berhenti jika nilai yang dicari ditemukan.
                          o  i < n: Berhenti jika seluruh elemen array telah diperiksa (termasuk sentinel).
                      •  Jika nilai cari ditemukan, indeksnya (i - 1) akan dihitung dan disimpan.

                  5)  Menampilkan hasil pencarian:


                                                                                                         225
   229   230   231   232   233   234   235   236   237   238   239