Sabtu, 12 Maret 2016

Mencari Suatu Nama di dalam suatu Array yang Mengandung suatu String Tertentu menggunakan C++

Bagaimana mencari suatu nama yang mengandung suatu String di dalam sebuah array?
Algoritmanya seperti ini.
Array haruslah ber-type String.
Ada suatu kondisi dimana suatu array akan dicek elemennya satu per satu, Menggunakan perulangan.
Di dalam perulanagan tersebut, buat suatu deklarasi yang mengubah string menjadi
char.
Setelah itu terdapat kondisi dimana elmen string yang sudah bertype char itu dicek setiap elemenya dan dibandingkan elemen ke 1 yang bernilai sama dengan elemen data yang dicari pada elemen awal. Lalu cek lagi apakah kondisi selanjutnya adalah elemennya sama lagi dengan element data yang dicari.
Jika sama maka buat status bernilai true, dan simpan posisi array string di suatu variable. Atau langsung cetak saja.

Ini contoh programnya:

#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <string>
using namespace std;

int search_data_rlike(){
cout<<"Daftar Nama: ayunintyas, ayung, rahayu, bayu, diah\n";
string mydata[] = {"ayunintyas", "ayung", "rahayu", "bayu", "diah"};
cout<<"\n\n";
cout<<"nama yang mengandung 'ayu' adalah:\n";
char mychar[1024];
char mysearch[] = "ayu";
int size = sizeof(mydata)/sizeof(string);
int status = 0;
for(int i=0; i<size; i++){
strcpy(mychar, mydata[i].c_str());
int sizei = sizeof(mychar)/sizeof(*mychar);
for(int j=0; j<sizei; j++){
if(mychar[j] == mysearch[0]){
if(j < sizei-3){
if((mychar[j+1] == mysearch[1]) && (mychar[j+2] == mysearch[2])){
status = 1;
}
}
}
}
if(status == 1){
cout<<mydata[i];
cout<<"\n";
}
status=0;
}
}

int main(){
search_data_rlike();
}


Hasil ketika program dijalankan:
:


Terima Kasih :)

Tidak ada komentar:

Posting Komentar