PROGRAM SEARCHING
BAB
I
PENDAHULUAN
A.
Latar Belakang
Pada
pembuatan makalah kali ini kami akan membahas tentang Pencarian
(Searching),dengan metode Sequential Searching. Sequential Search (pencarian
beruntun) menggunakan prinsip sebagai berikut,data yang ada di bandingkan satu
persatu secara berurutan dengan yang dicari sampai data tersebut ditemukan atau
tidak di temukan.
Pencarian
(searching) merupakan proses fundamental dalam pengelolaan data. Proses
pencarian adalah menemukan nilai (data) tertentu di dalam sekumpulan data yang
bertipe sama (baik bertipe dasar atau bertipe bentukan). Data dapat disimpan
secara temporer dalam memori utama atau disimpan secara permanen di dalam
memori sekunder (tape atau disk). Didalam memori utama , struktur penyimpanan
data yang umum adalah brupa larik atau tabel(array), sedangkan di dalam memori
sekunder berupa arsip (file). Algoritma pencarian yang akan dibicarakan dimulai
dengan algoritma pencarian yang paling sederhana yaitu pencarian beruntun atau
Sequential Search.
B.
Tujuan
a)
Mahasiswa dapat memahami salah satu metode algoritma
pencarian (Sequential Search).
b)
Mahasiswa dapat membuat algoritma dan program dalam
bahasa pascal dengan metode Sequential Searching.
BAB II
DASAR TEORI
Pencarian (searching) merupakan proses fundamental
dalam pengelolaan data. Proses pencarian adalah menemukan nilai (data) tertentu
di dalam sekumpulan data yang bertipe sama (baik bertipe dasar atau bertipe
bentukan). Search algoritma adalah algoritma yang menerima argument A dan
mencoba untuk mencari record yang mana keynya adalah A.
Algoritma bisa mengembalikan nilai record, atau
pointer ke record. Reord sendiri adalah tipe data yang terdiri atas kumpulan
variabel disebut field. Sequensial search (penelusuran sequensial) yaitu proses
mengunjungi melalui suatu pohon dengan cara setiap simpul di kunjungi hanya
satu kali yang disebut dengan tree transversal / kunjungan pohon.
Data dapat disimpan secara temporer dalam memori utama
atau disimpan secara permanen di dalam memori sekunder (tape atau disk). Di
dalam memori utama, struktur penyimpanan data yang umum adalah berupa larik
atau tabel (array), sedangkan di dalam memori sekunder berupa aesip (file).
Aktivitas yang berkaitan dengan pengolahan data ini
sering di dahului dengan proses pencarian. Sebagai contoh, untuk mengubah
(update) data tertentu, langkah pertama yang harus dilakukan adalah mencari
keberadaan data tersebut di dalam kumpulannya. Aktivitas yang awal sama juga
dilakukan pada proses penambahan (insert) data yang baru. Proses penambahan
data dimulai dengan mencari apakah data yang ditambahkan sudah terdapat di
dalam kumpulan. Jika sudah dan mengasumsikan tidak boleh ada duplikasi
data,maka data tersebut tidak perlu di tambahkan, tetapi jika belum ada, maka
tambahkan.
Algoritma pencarian yang akan dibicarakan adalah
algoritma pencarian yang paling sederhana yaitu pencarian beruntun atau
sequential search.
ü Metode
pencarian beruntun (sequential search)
Konsep yang digunakan dalam metode
ini adalah membandingkan data-data yang ada dalam kumpulan tersebut, mulai dari
elemn pertama sampai elemen di temukan, atau sampai element terakhir.
BAB
III
PEMBAHASAN
Dalam
makalah ini kami akan membahas diantaranya :
a. Membuat
algoritma pencarian data karyawan dengan menggunakan metode sequential search.
b. Membuat
program pencarian data karyawan dengan menggunakan bahasa pemrograman pascal.
Ø Algoritma
pencarian data karyawan dengan menggunakan metode sequential search.
1.
Pencarian nama karyawan menggunakan
pascal
2.
Masukkan data = nama karyawan
3.
Set variabel ketemu (boolean) dengan
data awal = false
4.
Set variabel 1 (longint) dengan data
awal = 1
5.
Proses variabel i sampai data ke-n,
dengan proses perulangan
6.
Jika nama ke-n sudah sama dengan data
input,set variabel ketemu dengan data = true
7.
Jika variabel ketemu sudah bernilai
benar, maka tuliskan keterangan ‘data ditemukan’ dilayar.
8.
Jika sampai data ke-n tidak ada data
yang cocok, dan variabel ketemu masih berisi data = false, maka tuliskan
keterangan ‘data tidak ditemukan’ dilayar
9.
selesai
Penulisan
Program Bahasa Pascal
“PROGRAM
PENCARIAN DATA KARYAWAN”
uses crt;
type kerja =record
gol:string;
gaji:longint;
end;
kar=array[1..50] of kerja;
var
karyawan : kar;
i,j,jum : byte;
ya : boolean;
pil : char;
procedure isi(var
x:kar);
begin
i:=0;
ya:=true;
repeat
begin
i:=i+1;
writeln
(‘--------------------------------------------------‘);
writeln (‘isi data karyawan
ke-‘,i:4);
writeln (‘--------------------------------------------------‘);
with x[i] do
begin
write (‘golongan:’); readln
(gol);
write (‘nama karyawan:’);
readln (nama);
write (‘gaji karyawan: ‘);
readln (gaji);
writeln
(‘-----------------------------------------------‘);
end;
write (‘tambah data? (y/t):’);
readln(pil);
if pil <>’y’ then
ya:=false;
writeln;
end;
until(‘ya=false’);
jum:=i;
end;
procedure
sorting (var x:kar);
var
urut : kerja;
begin
writeln (‘sorting menurut gaji’);
for i:=1 to jum-1 do
begin
for j:=i+1 to jum do
begin
if x[i].gaji>x[j].gaji then
begin
urut:=x[i];x[i]:=x[j];x[j]:=urut;end;
end;
end;
end;
procedure
cari (var x:kar);
var
ketemu : boolean;
cari : string;
begin
writeln
(‘pencarian karyawan’);
write (‘nama karyawan:’);readln(cari);
ketemu:=false;
for i:= 1 to jum do
begin
if x[i].nama=cari then
ketemu:=true;
end;
if ketemu then
writeln
(‘karyawan yang bernama (‘,dicari,’) ada dalam perusahaan kami’);
else
writeln (‘maaf tidak ada karyawan yang
bernama (‘,cari,’) dalam perusaan
kami’);
end;
procedure
tampil(var x:kar);
begin
writeln;
writeln (‘data karyawan’);
writeln
(‘------------------------------------------------------‘)
writeln (‘------------------------------------------------------‘)
for
i:=1 to jum do
writeln
(‘|’,i:5,’|’,x[i].gol:10,’|’,x[i].nama:10,’|’,x[i].gaji:12,’|’);
writeln
(‘-------------------------------------------------‘);
end;
begin
writeln (‘PROGRAM DATA KARYAWAN PT.COKOLATE
Tbk.’);
writeln;
isi
(karyawan);
write
(‘tekan enter untuk melihat data’);readln;
tampil
(karyawan);
sorting
(karyawan);
tampil
(karyawan);
write
(‘tekan enter untuk mencari karyawan’);readln;
cari
(karyawan);readln;
end.
Tidak ada komentar:
Posting Komentar