-->

I'M Bayu Pradika

Graphic Designer . Web Developer . Programmer

Senin, 19 September 2022

Contoh Program Bahasa C++ Tentang Searching



1. Buatlah workspace menggunakan C++.

#include <stdio.h>

#include <stdlib.h>

#define MAX 10 

int Data[MAX];

int SequentialSearch(int x)

{

int i = 0;

bool ketemu = false;

while ((!ketemu) && (i < MAX)){

if(Data[i] == x)

ketemu = true;

else

i++;

}

if(ketemu)

return i;

else

return -1;

}

int main()

{

int i;

//pembangkit bilangan random 

srand(0);

//membangkitkan bilangan integer random 

printf("\nDATA : ");

for (i = 0; i < MAX; i++)

{

Data[i] = rand()/1000+1;

printf("%d ", Data[i]);

}

int Kunci;

printf("\nKunci : ");

scanf("%d", &Kunci);

int ketemu = SequentialSearch(Kunci);

if(ketemu>0)

printf("Data ditemukan pada posisi %d", ketemu);

else

printf("Data tidak ditemukan");

}




2. Buatlah project baru SEARCHING yang berisi file C source untuk metode pencarian sequential search dan binary search.

#include <stdio.h>
#include <stdlib.h>
#define MAX 10
int Data[MAX];
// Prosedur menukar data 
void Tukar (int *a, int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
// Prosedur pengurutan metode Quick Sort
void QuickSort(int L, int R)
{
int i, j, x;
x = Data[(L+R)/2];
i = L;
j = R;
while (i <= j){
while(Data[i] < x)
i++;
while(Data[j] > x)
j--;
if(i <= j){
Tukar(&Data[i], &Data[j]);
i++;
j--;
}
}
if(L < j)
QuickSort(L, j);
if(i < R)
QuickSort(i, R);
}
// Fungsi pencarian biner
int BinarySearch(int x)
{
int L = 0, R = MAX-1, m;
bool ketemu = false;
while((L <= R) && (!ketemu))
{
m = (L + R) / 2;
if(Data[m] == x)
ketemu = true;
else if (x < Data[m]) 
R = m - 1;
else
L = m + 1;
}
if(ketemu)
return m;
else
return -1;
}
int main()
{
int i;
//pembangkit bilangan random 
srand(0);
//membangkitkan bilangan integer random 
printf("\nDATA : ");
for (i = 0; i < MAX; i++)
{
Data[i] = rand()/1000+1;
printf("%d ", Data[i]);
}
//mengurutkan data
QuickSort(0, MAX-1);
int Kunci; 
printf("\nKunci : "); 
scanf("%d", &Kunci);
int ketemu = BinarySearch(Kunci);
if(ketemu>0)
printf("Data ditemukan pada posisi %d", ketemu);
else
printf("Data tidak ditemukan");
}





Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna Veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.

0 comments:

Categories

Contact Us

BAYU
+62 896-2690-9619
Kampar, Riau, Indonesia