Rabu, 22 Desember 2010

Tugas 4 Algoritma Pemrograman 2


#include<stdio.h>
int main()
{
    //deklarasi variabel
    int A[10], i,j,k,tkr,top,bottom,middle,tm;
    //proses penginputan data
    for(i=0;i<10;i++)
    {
        printf("Data ke-%d:",i+1);
        scanf("%d",&A[i]);
    }
    printf("Masukkan data yang akan anda cari:");
    scanf("%d",&k);
    //proses pengurutan data
  
    for(i=0;i<10;i++)
    {
        for(j=i+1;j<10;j++)
        {
            if (A[i]>A[j])
            {
                tkr=A[i];
                A[i]=A[j];
                A[j]=tkr;
            }
        }
    }
    //proses pencarian data
    tm=0;
    top=9;
    bottom=0;
    while(top>=bottom)
    {
        middle=(top+bottom)/2;
        if(A[middle]==k)
        {
            tm++;
        }
        if(A[middle]<k)
        {
            bottom=middle+1;
        }
        else
        {
            top=middle-1;
        }
    }
    if (tm>0)
    {
      printf("Data %d yang dicari ada dalam array\n",k);
    }
    //jika tidak ditemukan
    else
    {
      printf("Data tidak ditemukan dalam array\n");
  
    }
getch();
return 1;
}

//inporation
#include<stdio.h>
int main()
{
  //deklarasi variable
  int A[10], i,j,k,tkr,low,high,pos,tm;
  //proses penginputan data
  for(i=0;i<10;i++)
  {
    printf("data ke-%d:",i+1);
    scanf("%d",&A[i]);
  }
  //Input data yang akan dicari
  printf("Masukkan data yang akan anda cari:");
  scanf("%d",&k);
  //proses pengurutan data
  for(i=0;i<10;i++)
  {
    for(j=i+1;j<10;j++)
    {
        if (A[i]>A[j])
        {
            tkr=A[i];
            A[i]=A[j];
            A[j]=tkr;
        }
    }
  }
  //proses pencarian data
  tm=0;
  high=9;
  low=0;
  do
  {
      pos = ((k - A[low]) / (A[high] - A[low]))*(high-low) + low;
      if (A[pos] == k)
        {
            tm++;
            break;
        }
      if (A[pos] > k)
      high = pos-1;
            else
      if (A[pos] < k)
      low = pos + 1;
  }
  while(k >= A[low] && k <= A[high]);
  if (tm>0)
  {
     printf("data %d yang dicari ada dalam array\n",k);
  }
  //jika tidak ditemukan
  else
  {
     printf("data tidak ditemukan dalam array\n");
  }
 getch();
 return 1;
}

// Sentinel

int main(){
    int data[7] = {3,12,9,-4,21,6};
    int cari,i;
    printf("masukkan data yang ingin dicari = ");
    scanf("%d",&cari);
    data[6] = cari;
    i=0;
        while(data[i] != cari){
        i++;
        }
            if(i<6){
                printf("Data ada!\n");
            }
            else{
                printf("Data tidak ada!\n");
            }
getch();
return 1;
}

//sequen
#include <stdio.h>
int main()
{
    //deklarasi variabel
    int A[10],index[10], i,j,k;
    //proses penginputan data
    for(i=0;i<10;i++)
    {
        printf("Data ke-%d:",i+1);
        scanf("%d",&A[i]);
    }
//memasukkan data yang akan dicari ke dalam K
    printf("Masukkan data yang akan anda cari:");
    scanf("%d",&k);
    //proses pencarian data
    j=0;
    for (i=0;i<10;i++)
    {
        if(A[i]==k)
        {
            index[j]=i;
            j++;
        }
    }
    //jika data ditemukan dalam array
    if (j>0)
    {
        printf("Data %d yang dicari ada %d buah\n",k,j);
        printf("Data tersebut terdapat dalam index ke :");
        for(i=0;i<j;i++)
        {
            printf(" %d ",index[i]);
        }
        printf("\n");
    }
    //jika tidak ditemukan
    else
    {
        printf("Data tidak ditemukan dalam array\n");
    }
getch();
return 1;
}

Tidak ada komentar:

Posting Komentar