Anda di halaman 1dari 10

ANALISIS DAN PEMROGRAMAN ALGORITMA

KELOMPOK 3

Andi Ainul Furqan – 2021230001


Andi Fachrul Rizal – 2021230002
Reimon Aldin - 2021230012
● Dalam ilmu logika dan algoritma sering kali menemui masalah
tentang bagaimana mendapatkan suatu data dalam kumpulan
data. Dalam keperluannya untuk mencari data, terdapat beragam
algoritma pencarian(search algoritm). Algoritma sendiri
merupakan “algoritma yang menerima sebuah argumen ‘a’ dan
mencoba untuk menemukan sebuah rekaman yang memiliki
kunci ‘a’. Pencarian dapat dilakukan terhadap data yang secara
keseluruhan berada dalam memory komputer ataupun yang
berada dalam penyimpanan ekternal (hardisk). Pencarian yang
dilakukan terhadap data yang berada dalam komputer di kenal
dengan pencarian internal sedangkan pencarian yang dilakukan
pada media penyimpanan eksternal disebut pencarian ekternal.
Pencarian internal meliputi Pencarian sekuensial (sequential
search) dan pencarian biner (binary search).
● Sequential Search adalah proses membandingkan setiap elemen
larik satu per satu secara beruntun, mulai dari elemen pertama
sampai elemen yang dicari ditemukan atau seluruh elemen sudah
diperiksa. Algoritma pencarian secara linear digunakan untuk
mencari sebuah nilai pada tabel sembarang. Ada dua macam cara
pencarian pada tabel. Algoritma ini mempunyai dua jenis metode
yaitu dengan boolean dan tanpa boolean. Algoritma pencairan
secara linear melakukan pengulangan sebanyak 1 kali untuk
kasus terbaik (value sama dengan elemen pertama dalam tabel)
dan Nmax kali untuk kasus terburuk. Sehingga algoritma ini
mempunyai kompleksitas algoritma O(n).
● Algoritma Sequential Search adalah salah satu algoritma pencarian
data yang biasa digunakan untuk data yang berpola acak atau belum
terurut. Algoritma ini akan mencari data sesuai kata kunci yang
diberikan mulai dari elemen awal pada array hingga elemen akhir
array. Kemungkinan terbaik (best case) ketika menggunakan
algoritma ini adalah jika data yang dicari terletak di indeks awal
array sehingga hanya membutuhkan sedikit waktu pencarian.
Sedangkan kemungkinan terburuknya (worst case) adalah jika data
yang dicari ternyata terletak dibagian akhir dari array sehingga
pencarian data akan memakan waktu yang lama.
FUNGSI
Pencarian atau searching suatu data pada sekumpulan data
merupakan proses yang sangat penting. Proses pencarian dilakukan
untuk mengetahui apakah data yang dicari terdapat pada
sekumpulan data yang ada. Selain untuk mengetahui keberadaan
data, informasi yang lain yang bisa didapat adalah letak dari data
tersebut. Adapun jenis pencarian yaitu:
Program Sequential Search (Pencarian Linear)
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int i;
int n;
int cari,ketemu=0;
int A[100];

cout<<"TUGAS KELOMPOK 3\n";


cout<<"PROGRAM SEDERHANA SEARCHING LINIER\n";
cout<<"--------------------------"<<endl;
cout<<"Andi Ainul Furqan_2021230001\n";
cout<<"Reimon Aldin_2021230012\n";
cout<<"Andi Fachrul Rizal_2021230002\n";
cout<<"--------------------------"<<endl;
cout<<"Masukan Banyak Data : ";
cin>>n;
cout<<endl;

for (i=1;i<=n;i++)
{
cout<<"Masukan Data Ke-"<<i<<" : ";
cin>>A[i];
}
cout<<endl;
cout<<"Input Bilangan yang dicari : ";
cin>>cari;
cout<<"--------------------------"<<endl;
cout<<endl;

for(i=0;i<=n;i++)
{
if (A[i]==cari)
{
ketemu=1;
cout<<"Data Ditemukan Pada Indeks Ke-"<<i;
}
}
if (ketemu==0)
{
cout<<"Data tidak ditemukan";
}
getch();
}
PENJELASAN PROGRAM
Program diatas saya membuat beberapa variabel yang semuanya bertipe data integer

 Variabel i berfungsi untuk inisialisasi nilai awal pada perulangan for untuk mengakses index
array.
 Variabel n berfungsi untuk menentukan jumlah data yang akan dimasukan kedalam array.
Variabel ini akan menjadi batas kondisi perulangan akan dijalankan.
 Variabel cari berfungsi untuk menyimpan nilai yang ingin dicari. Nantinya nilai dari variabel ini
akan dibandingkan dengan setiap nilai didalam array tersebut.
 Variabel ketemu berfungsi untuk membuat statement tambahan jika data yang dicari tidak
ditemukan. nilai awal dari variabel ini adalah 0 yang berarti tidak ditemukan data yang dicari,
namun bila data yang dicari ditemukan maka nilainya adalah 1.
 variabel A[100] adalah variabel array dengan ukuran 100. jadi kita dapat memasukan jumlah
data sebanyak 100 data pada variabel A tersebut.
TUJUAN DAN MANFAAT

Tujuan Sequential Search adalah algoritma pencarian yang bekerja dengan mengecek
setiap elemen pada array secara berurutan mulai dari elemen pertama hingga akhir.
Algoritma pencarian ini dapat digunakan untuk data yang masih berpola acak seperti :
1. Mengkaji metode Searching Linier sequential sebagai program dalam
menyelesaikan pencarian berurutan.
2. Penggunaan Metode Searching Linier Sequential dalam menyelesaikan
masalah-masalah yang ada.
KEKURANGAN DAN KELEBIHAN

1. Kelebihan dari proses pencarian secara sequential search jika data yang
dicari terletak di depan, maka data akan ditemukan dengan cepat.
2. Adapun beberapa kekurangan dari Sequential Search yaitu:
- Jika data yang dicari terletak dibelakang atau paling akhir, maka akan
membutuhkan waktu yang akan lama dalam proses pencariannya
-Beban komputer akan semakin bertambah jika jumlah data dalam array sangat banyak
Tanggapan/Saran

Dari hasil Laporan makalah logika dan algoritma mengenai Searching Linier Sequential
maka dapat kami berikan masukan atau saran – saran sebagai berikut: Untuk
menggunakan program Searching Linier Sequential sebaiknya mencari indeks array
yang terletak didepan atau pertengahan karena apabila kita mencari data yang terletak
dibelakang akan ,membutuhkan waktu yang lama. Contohnya, untuk mencari data
sebanyak 4.294.967.296 (4 milyar) memiliki rata-rata perbandingan sebanyak 2 milyar,
berbeda dengan Algoritma Binary Search yang hanya membutuhkan perbandingan 32
kali saja

Anda mungkin juga menyukai