Minggu, 24 April 2011

Kombinasi Struct dan Fungsi Squential Search untuk Pencarian Data

/*
 * by Lulus.SD
*/


#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

int cariKode(int tempKode[],int jumlahData,int cari);

struct kodePos {
       int kode;
       char kecamatan[30];
       char kabupaten[30];
       };

int main (){
    int jumlahData;
    bool isKetemu = false;
    int cari;
    int index;
    int tempKode[100];
  
    printf("Masukkan jumlah Data : ");scanf("%i",&jumlahData);
    printf("\n\n");
  
    system("cls");
  
    kodePos kp[jumlahData];
  
    for (int i=0;i<jumlahData;i++){
        printf("=============================================\n");
        printf("Masukkan Kode Pos       : ");scanf("%i",&kp[i].kode);
        printf("Masukkan Nama Kecamatan : ");scanf("%s",&kp[i].kecamatan);
        printf("Masukkan Nama Kabupaten : ");scanf("%s",&kp[i].kabupaten);
        printf("=============================================\n");
        }
  
    system("cls");
      
    for (int i=0;i<jumlahData;i++){
        tempKode[i] = kp[i].kode;
        }
  
    printf("\nMasukkan Kode Pos yang anda Cari : ");scanf("%i",&cari);
    printf("\n\n");
  
    system("cls");
  
    index = cariKode(tempKode,jumlahData,cari);
  
    if (index >= 0){
        printf("\nData yang Anda cari ditemukan!!!\n");
        printf("\nBerikut adalah Data yang Anda cari :");
        printf("\nKode Pos       : %i",kp[index].kode);
        printf("\nNama Kecamatan : %s",kp[index].kecamatan);
        printf("\nNama Kabuaten  : %s",kp[index].kabupaten);
    } else {
        printf("\nData yang Anda cari tidak ditemukan");
    }
    getch();
    return 0;
}

int cariKode(int tempKode[],int jumlahData,int cari){
    for (int index=0;index<jumlahData;index++){
        if (cari == tempKode[index]){
                 return index;
                 }
        }
        return -1;
    }

Tidak ada komentar:

Posting Komentar