Kamis, 03 Februari 2011

SQUENTCIAL SEARCHING

Squential searching adalah, metode pencarian data...dengan pola perulangan,mencari satu persatu....
ya,ini saya posting buat tugas saya...tapi ini juga saya jadikan media penyimpannan saya,,,sapa tau data saya hilang,,tinggal ngambill aj..ini juga saya share deh sama kalian..somoga bermanfaat,,sory kalo ada kekurangan ya..

ini listingnya:
#include "stdio.h"
#include "conio.h"
main()
{int ada=2,n,x['x'],cr;
 printf("Masukkan Jumlah Data: ");scanf("%d",&n);
 for(int i=0;i<n;i++)
    {
     printf("Masukkan Nilai %d : ",i);scanf("%d",&x[i]);

    }
 printf("Masukkan Nilai Yang Dicari: ");scanf("%d",&cr);
 for(int i=0;i<n;i++)
 {
  if(x[i]==cr)
  {ada=1;
   printf("NilaiYang Anda Cari Adalah %d,Berada Pada Array %d \n",x[i],i);
   }


 }
 if(ada!=1)                                                                                     //ini di taruh dalam for juga tidak apa-apa
 printf("\nNilai Yang Anda Cari Adalah %d,Tidak Ada dalam Data.",cr);
  getch();
}

Binary Search Di bahasa C

Binary search adalah salah satu metode pencarian data, pada record-record atau yang lainnya. proses kerja binary search mencari datanya unik,,disini saya menggunakan bahasa C, setahu saya datanya harus di sorting terlebih dahulu. mohon maaf kalau ada kekurangan.Yah langsung saja ini listing yang saya buat
================================================================
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

int intcmp(const void *v1, const void *v2);
main()
{
  char ul='y';
    int A[100],i,n,s,l,h,m;
do
{  clrscr();
    printf("\nMasukkan Jumlah Data : ");scanf("%d",&n);
    printf("\nMasukkan Nilai: \n");
    for(i=0;i<n;i++)
        {
           int no=i+1;
            printf("%d. Array Ke %d: ",no,i);scanf("%d",&A[i]);
        }
    puts("Tekan Sembarang Untuk Sorting");//nilai Harus di sorting terlebih dahulu
    getch();
    qsort(A, n, sizeof(A[0]),intcmp);
    for(i=0;i<n;i++)
          {
         int no=i+1;
           printf("%d. Array %d : %d\n",no,i,A[i]);
      }

                printf("\nMasukkan elemen yang ingin anda cari : ");scanf("%d",&s);
            l=0;h=n-1;

                while(l<=h)              //proses mencari.
                    {
                        m=(l+h)/2;
                        if(s==A[m])
                        break;
                        if(s<A[m])
                        h=m-1;
                        else
                        l=m+1;
        }
        if(l<=h)
            printf("\nElemen %d ditemukan pada Array Ke %d",s,m);
      else
            printf("\nElemen Tidak ditemukan");
          printf("\nIngin Mengulang yang lain (Y/T)? ");scanf("%s",&ul);

}
while((ul=='y')||(ul=='Y'));
}

 //fungsi pendukung pada qsort(sorting)
 int intcmp(const void *v1, const void *v2)
 {
     return (*(int *)v1 - *(int *)v2);
 }