Anda di halaman 1dari 12

Algoritma dan Pemrograman II

Fakultas Ilmu Komputer –


PENCARIAN Universitas Sriwijaya
Tahun Ajaran Genap 2017-
2016
PENCARIAN
Penerapan dari konsep pemrograman sebelumnya, dapat digunakan untuk berbagai
macam permasalahan.
Fungsi pencarian itu sendiri adalah memvalidasi (mencocokan) data.
Sebagai contoh, untuk menghapus atau mengubah sebuah data di dalam sekumpulan
nilai, langkah pertama yang harus ditempuh adalah mencari data tersebut, lalu
menghapus atau mengubahnya.
Contoh lain adalah penyisipan data ke dalam kumpulan data, jika data telah ada,
maka data tersebut tidak akan disisipkan, selainnya akan disisipkan ke dalam
kumpulan data tersebut.
PENCARIAN (2)
Ada sebuah kasus sederhana, misalkan terdapat 10 data yang bertpe integer,
terangkum di dalam variabel larik L.
Terdapat data X di dalam larik L tersebut. Bagaimana proses pencarian data X
tersebut? Jika ketemu maka akan mengeluarkan pesan teks “Data ditemukan!” atau
jika tidak ditemukan akan mengeluarkan pesan teks “Data tidak ditemukan”.
Serta menampilkan di elemen ke beberapa elemen tersebut ditemukan, dan berapa
jumlah data X di larik L.
PENCARIAN (3)
Ada beberapa metode mencari data di dalam sekumpulan data yang bertipe sama
yaitu:
1. Metode Pencarian Beruntun (Sequential Search)
2. Metode Pencarian Bagi Dua (Binary Search)
PENCARIAN BERUNTUN
(SEQUENTIAL SEARCH)
PENCARIAN BERUNTUN (SEQUENTIAL
SEARCH)
Konsep yang digunakan dalam metode ini adalah membandingkan data-data yang
ada dalam kumpulan tersebut, mulai dari elemen pertama sampai elemen
ditemukan, atau sampai elemen terakhir.
Start

FLOWCHART SEQUENTIAL X

SEARCH arr[10] = {20,15,22,14,12,10,24,19,18,16}


Ketemu= false

Perhatikan alur di bawah ini:


For i 0 to arr.length

20 15 22 14 12 10 24 19 18 16 false

Arr[i] == x
Misalkan data yang akan dicari adalah X,
misal X = 10, maka elemen yang diperiksa
True
adalah elemen yang bernilai 10.
Berikut ini adalah flowchart pencarian berurut Ketemu=true;

Return ketemu

Finish
ALGORITMA SEQUENTIAL SEARCH
Function boolean search (input Arr: ArrayInteger, input x : integer)
{mencari keberadaan nilai x di dalam array arr[1..n] }
{K. Awal: x adalah data yang dicari dan array arr[1..n] kumpulan data}
{K. Akhir: Bilangan Ditemukan jika x ditemukan. Jika x tidak ditemukan, Bilangan tidak
ditemukan }
DEKLARASI:
i: integer
Ketemu : Boolean
ALGORITMA:
ketemu=false
for i  0 to arr.length do
If arr[i] == x then
ketemu = true;
Endif
endfor
return ketemu;
LATIHAN 1
Buatlah algoritma dan program untuk pencarian
dengan menggunakan algoritma sequential search,
yang mana jumlah array dan isi data array yang
menjadi kumpulan data diinputkan dari keyboard.
Data bertipe data Integer. Program berisi sebuah
fungsi SeqSearch yang melakukan pencarian
dengan menggunakan algoritma sequential search
LATIHAN 2
Buatlah algoritma dan program untuk pencarian dengan
menggunakan algoritma sequential search yang mana
kumpulan data bertipe integer dan sudah ditentukan data.
Program berisi sebuah prosedur PSeqSearch yang
melakukan pencarian dengan menggunakan algoritma
sequential search dan program menghasilkan data yang
dicari ditemukan atau tidak di dalam kumpulan data dan
program juga dapat menampilkan jumlah data yang
ditemukan beserta indeks dari data yang ditemukan
LATIHAN 3
Buatlah algoritma dan program untuk pencarian dengan
menggunakan algoritma sequential search yang mana
kumpulan data bertipe char dan sudah ditentukan data.
Program berisi sebuah prosedur PSeqSearch yang
melakukan pencarian dengan menggunakan algoritma
sequential search dan program menghasilkan data yang
dicari ditemukan atau tidak di dalam kumpulan data dan
program juga dapat menampilkan jumlah data yang
ditemukan beserta indeks dari data yang ditemukan
LATIHAN 4
Buatlah algoritma dan program untuk pencarian dengan
menggunakan algoritma sequential search yang mana
kumpulan data bertipe string dan sudah ditentukan data.
Program berisi sebuah prosedur PSeqSearch yang
melakukan pencarian dengan menggunakan algoritma
sequential search dan program menghasilkan data yang
dicari ditemukan atau tidak di dalam kumpulan data dan
program juga dapat menampilkan jumlah data yang
ditemukan beserta indeks dari data yang ditemukan

Anda mungkin juga menyukai

  • Cara Membuat Dadar Gulung
    Cara Membuat Dadar Gulung
    Dokumen2 halaman
    Cara Membuat Dadar Gulung
    Muhammad Abdur Rosyid Dakhilullah
    Belum ada peringkat
  • Cerpen 2
    Cerpen 2
    Dokumen8 halaman
    Cerpen 2
    Muhammad Abdur Rosyid Dakhilullah
    Belum ada peringkat
  • Cerpen 2
    Cerpen 2
    Dokumen8 halaman
    Cerpen 2
    Muhammad Abdur Rosyid Dakhilullah
    Belum ada peringkat
  • Cover Kimia Lingkungan
    Cover Kimia Lingkungan
    Dokumen3 halaman
    Cover Kimia Lingkungan
    Muhammad Abdur Rosyid Dakhilullah
    Belum ada peringkat
  • Bab 10 Pemampatan Citra
    Bab 10 Pemampatan Citra
    Dokumen26 halaman
    Bab 10 Pemampatan Citra
    Muhammad Abdur Rosyid Dakhilullah
    Belum ada peringkat
  • Tugas MK Pancasila
    Tugas MK Pancasila
    Dokumen23 halaman
    Tugas MK Pancasila
    Muhammad Abdur Rosyid Dakhilullah
    Belum ada peringkat
  • Ti414 041035 634 7
    Ti414 041035 634 7
    Dokumen3 halaman
    Ti414 041035 634 7
    Muhammad Abdur Rosyid Dakhilullah
    Belum ada peringkat
  • Analasis CSS
    Analasis CSS
    Dokumen11 halaman
    Analasis CSS
    Muhammad Abdur Rosyid Dakhilullah
    Belum ada peringkat
  • Logika Matematika
    Logika Matematika
    Dokumen52 halaman
    Logika Matematika
    Gregorius Ivan Ferdino
    Belum ada peringkat