Sabtu, 25 Februari 2017

perograman c++, searching array

NAMA : NUR HAZMILA
NIM : E1E1 15 037


Assalamu’Alaikum wr.wb
Ini adalah postingan tugas ke dua saya mata kuliah struktur data semester 4. Tugas ke dua ini tentang Searching Array. Searching array adalah Teknik pencarian data dari array yang paling mudah adalah dengan cara sequential search , di mana data dalam array dibaca 1 demi satu, diurutkan dari index terkecil ke index terbesar, maupun sebaliknya. 

1.  Program untuk mencari data pada array 2 dimensi
#include <iostream>
#include <conio.h>
#include <stdio.h>

using namespace std;

int main()
{
    int A[80][80];//mendeklarasikan VARIABEL dan jumlah Kolom Dan baris array yaitu maksimal 80
    int y=0;
    int z=0;
    int p, q, r=0, s, t, j, l=0, x=0;//mendeklarasikan variabel, dan jumlah baris serta kolom untuk digunakan 
                                             sebagai batas perulangan
    cout << "Masukan Data Array anda : " << endl;
    cout << "Ukuran Baris : "; cin >>p;
    cout << "Ukuran Kolom : "; cin >>q; //menangkap nilai jumlah baris dan kolom yang dimasukkan oleh    
                                                                 user
    int e[p], k[q];
    for(int t=0;t<p;t++){//meminta user untuk memasukan jumlah baris
        cout<<"\nBaris :  "<<t<<endl;
        for(int j=0; j<q; j++){//meminta user untuk memasukkan jumlah kolom
            cout<<"Kolom :  "<<j<<" : "; cin>>A[t][j];
        }
    }
    for(int t=0;t<p;t++){//melakukan pengulangan sebanyak jumlah baris yang di inputkan
        if(t<=p){
            cout<<endl;
        }
        for(int j=0; j<q; j++){//melakukan pengulangan sebanyak jumlah kolom yang diinputkan
            cout<<A[t][j]<<" ";//menampilakan array yang telah diinputkan
        }

    }
    cout<<"\nPencarian Data"<<endl;//meminta user  untuk nenasukkan data yang ingin dicari
    cout<<"Cari Data : "; cin>>s;//menangkap nilai yang dicari

    //pengulangan untuk menentukan letak nilai yang di cari
    for(int t=0;t<p;t++){
        for(j=t; j<q; j++){
            if(A[t][j]==s){

                e[x]=t;
                k[l]=j;
                x++;l++;
                r++;
            }
        }
    }
    for(int t=0; t<s; t++){
        cout<<"\nData "<<s<<"  berada pada posisi ["<<e[t]<<"]["<<k[t]<<"]";//menampilkan posisi data yang di cari
    }
    return 0;
}
Hasil programnya:
 

penjelasannya: 

Jadi program diatas user dapat menginputkan terlebih dahulu berapa ukuran maksimumnya untuk ukuran baris dan kolomnya sesuai keinginan user. Kemudian user dapat menginputkan nilai kolom dan baris sesuai keinginannya dan dapat memasukan data yang hendak dicari . pada program ini menunjukan posisi dari nilai yang di cari tersebut.

2. Program untuk mencari data berupa huruf pada inputan yang berupa kalimat.
#include <iostream>
#include <conio.h>
#include <string.h>
#include <stdio.h>

using namespace std;

int main()
{
    int flag=0,v=0,k=0,x=0,y=0;
    char cari,kal[150],vokal[150],kons[100];
    cout<<"Masukan kalimat : "; gets(kal);

    for(int a=0;kal[a];a++)
    {
        if((kal[a]=='a') || (kal[a]=='i') || (kal[a]=='u') || (kal[a]=='e') || (kal[a]=='o'))
        {
            v++;
            vokal[x]=kal[a];
            x++;
        }
        else if(kal[a]==' ')
        {
        }
        else
        {
            k++;
            kons[y]=kal[a];
            y++;
        }
    }

    cout<<"Output :\n";
    cout<<"vokal : "<<v<<" = ";
    for (int a=0;a<v;a++)
    {
        cout<<vokal[a]<<" ";
    }

    cout<<"\n";
    cout<<"konsonan : "<<k<<" = ";
    for (int a=0;a<k;a++)
    {
        cout<<kons[a]<<" ";
    }

    cout<<endl;
    cout<<"Masukkan data yang akan anda cari : "; cin>>cari;
    for (int b=0;kal[b];b++)
    {
        if(kal[b]==cari)
        {
            flag=1;
        }
    }

    if(flag==1)
    {
        cout<<"Data ditemukan ";
    }
    else
    {
        cout<<"Data tidak ditemukan ";
    }
    getch();
    return 0;
}
 
hasil programnya: 
data yang tidak di temukan 


 data yang ditemukan :


 penjelasan:

Pada program diatas si user memasukkan kalimat yang diinginkan, kemudian membedakan antara huruf vokal dan konsonan. Si user dapat memasukkan huruf yang ingin di cari misalnya u, dan jika huruf tersebut ada pada kalimat yang tadi di masukkan si user pertama tadi, maka akan muncul pemberitahuan bahwa huruf tersebut di temukan dan sebaliknya jika tidak di temukan maka akan muncul pemberitahuan bahwa data tidak di temukan.
3. Program untuk mencari bilangan ganjil dan bilangan genap dari data angka yang diinputkan oleh user  serta  memberikan indeks untuk setiap data yang ditemukan.

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

using namespace std;

main(){
    int a[12];
    string cari;
    cout<<"INPUTan : "<<endl;
    for(int j=0; j<10; j++){
        cout<<"Data ke-"<<j<<" : "; cin>>a[j];
    }
    cout<<"\nData tersimpan !";
    cout<<"\nCari data [ganjil||genap] : "; cin>>cari;
    if(cari=="ganjil"){
        for(int j=0; j<10; j++){
            if(a[j]%2!=0){
                cout<<"\nData ke-"<<j<<" : "<<a[j];
            }
        }
    }
    else{
        for(int j=0; j<10; j++){
            if(a[j]%2==0){
                cout<<"\nData ke-"<<j<<" : "<<a[j];
            }
        }
    }
getch();
}

hasil programnya:

mencari nilai ganjil :


 

mencari nilai genap:
 

penjelasannya :


Pada program diatas si user dapat menginputkan nilai sebanyak 10 nilai. Si user kemudian menginputkan nilai yang ingin di cari, apakah itu berupa nilai genap atau ganjil dari nilai-nilai yang telah di inputkan. kemudian akan menampilkan semua nilai ganjil atau genap dari data yang di masukkan.

terimakasih atas kunjungannya, semoga bermanfaat..
wassalamu'alaikum wr.wb

Tidak ada komentar:

Posting Komentar