Membuat Squensial Search
Teknik
pencarian data dari array yang paling mudah adalah dengan cara sequential
search, dimana data dalam
array dibaca 1 demi satu, diurutkan dari index terkecil ke index terbesar,
maupun sebaliknya.
inilah contoh program sequential search...
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
void tambah();
void tampil();
void cari();
int array_a[50],posisi[50];
int i,update=0,ketemu=0;
int main()
{
char menu,kembali='y';
while(kembali=='y'){
system("cls");
printf("1.INPUT DATA\n2.TAMPILKAN DATA\n3.CARI DATA\n4.EXIT\n");
printf("Pilih : "); menu=getche();
switch(menu){
case '1':
{ system("cls");
tambah();
printf("Ingin kembali kemenu?(y/t) "); kembali=getche();
}
break;
case '2':
{ system("cls");
tampil();
printf("Ingin Kembali?(y/t) "); kembali=getche();
}
break;
case '3':
{ system("cls");
cari();
printf("Ingin Kembali? "); kembali=getche();
} break;
case '4':
exit(0);
}
}
return 0;
}
void tambah()
{
int banyak;
printf("Berapa banyak data yang akan di input : "); scanf("%d",&banyak);
for(i=update;i<banyak+update;i++)
{
printf("Masukkan data : "); scanf("%d",&array_a[i]);
printf("\n");
}
update=i;
}
void tampil()
{
printf("Data Yang Ada : \n");
for(i=0;i<update;i++)
{
printf("%d\n",array_a[i]);
}
}
void cari()
{
int cari,a=0;
printf("SEQUENTIAL SEARCH\n");
printf("Masukkan data yang anda cari : "); scanf("%d",&cari);
for(i=0;i<update;i++)
{ if(cari==array_a[i])
{ posisi[a]=i;
a++;
}
}
if(a>0){
printf("Data yang anda cari = %d , ditemukan pada index : ",cari);
for(i=0;i<a;i++)
{ printf(" %d ,",posisi[i]);}
printf("\n");
}
else printf("Data tidak ditemukan\n");
}