#include <bits/stdc++.h>
using namespace std;
class Contact {
private :
string Name;
string PhoneNumber;
public :
Contact( string name, string phone) {
Name = name;
PhoneNumber = phone;
}
string getName( ) const {
return Name;
}
string getPhoneNumber( ) const {
return PhoneNumber;
}
void display( ) const {
cout << "Ten: " << Name << ", So dien thoai: " << PhoneNumber << endl;
}
} ;
int main( ) {
vector< Contact> danhba = {
Contact( "Nguyen Van A" , "0912345678" ) ,
Contact( "Tran Thi B" , "0987654321" ) ,
Contact( "Le Van C" , "0934567890" ) ,
Contact( "Pham Thi D" , "0945678901" ) ,
Contact( "Nguyen Van E" , "0956789012" ) ,
Contact( "Tran Van F" , "0967890123" ) ,
Contact( "Le Thi G" , "0978901234" ) ,
Contact( "Pham Van H" , "0989012345" ) ,
Contact( "Nguyen Thi I" , "0990123456" ) ,
Contact( "Le Van J" , "0901234567" )
} ;
string tukhoa;
cout << "Nhap ten can tim: " ;
getline( cin , tukhoa) ;
transform( tukhoa.begin ( ) , tukhoa.end ( ) , tukhoa.begin ( ) , :: tolower ) ;
cout << "\n Ket qua tim kiem:\n " ;
bool timduoc = false ;
for ( const auto & lienhe : danhba) {
string ten = lienhe.getName ( ) ;
string ten_lower = ten;
transform( ten_lower.begin ( ) , ten_lower.end ( ) , ten_lower.begin ( ) , :: tolower ) ;
if ( ten_lower.find ( tukhoa) ! = string:: npos ) {
lienhe.display ( ) ;
timduoc = true ;
}
}
if ( ! timduoc) {
cout << "Khong tim thay lien he nao!\n " ;
}
return 0 ;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyBDb250YWN0IHsKcHJpdmF0ZToKICAgIHN0cmluZyBOYW1lOwogICAgc3RyaW5nIFBob25lTnVtYmVyOwoKcHVibGljOgogICAgQ29udGFjdChzdHJpbmcgbmFtZSwgc3RyaW5nIHBob25lKSB7CiAgICAgICAgTmFtZSA9IG5hbWU7CiAgICAgICAgUGhvbmVOdW1iZXIgPSBwaG9uZTsKICAgIH0KCiAgICBzdHJpbmcgZ2V0TmFtZSgpIGNvbnN0IHsKICAgICAgICByZXR1cm4gTmFtZTsKICAgIH0KCiAgICBzdHJpbmcgZ2V0UGhvbmVOdW1iZXIoKSBjb25zdCB7CiAgICAgICAgcmV0dXJuIFBob25lTnVtYmVyOwogICAgfQoKICAgIHZvaWQgZGlzcGxheSgpIGNvbnN0IHsKICAgICAgICBjb3V0IDw8ICJUZW46ICIgPDwgTmFtZSA8PCAiLCBTbyBkaWVuIHRob2FpOiAiIDw8IFBob25lTnVtYmVyIDw8IGVuZGw7CiAgICB9Cn07CgppbnQgbWFpbigpIHsKICAgIHZlY3RvcjxDb250YWN0PiBkYW5oYmEgPSB7CiAgICAgICAgQ29udGFjdCgiTmd1eWVuIFZhbiBBIiwgIjA5MTIzNDU2NzgiKSwKICAgICAgICBDb250YWN0KCJUcmFuIFRoaSBCIiwgIjA5ODc2NTQzMjEiKSwKICAgICAgICBDb250YWN0KCJMZSBWYW4gQyIsICIwOTM0NTY3ODkwIiksCiAgICAgICAgQ29udGFjdCgiUGhhbSBUaGkgRCIsICIwOTQ1Njc4OTAxIiksCiAgICAgICAgQ29udGFjdCgiTmd1eWVuIFZhbiBFIiwgIjA5NTY3ODkwMTIiKSwKICAgICAgICBDb250YWN0KCJUcmFuIFZhbiBGIiwgIjA5Njc4OTAxMjMiKSwKICAgICAgICBDb250YWN0KCJMZSBUaGkgRyIsICIwOTc4OTAxMjM0IiksCiAgICAgICAgQ29udGFjdCgiUGhhbSBWYW4gSCIsICIwOTg5MDEyMzQ1IiksCiAgICAgICAgQ29udGFjdCgiTmd1eWVuIFRoaSBJIiwgIjA5OTAxMjM0NTYiKSwKICAgICAgICBDb250YWN0KCJMZSBWYW4gSiIsICIwOTAxMjM0NTY3IikKICAgIH07CgogICAgc3RyaW5nIHR1a2hvYTsKICAgIGNvdXQgPDwgIk5oYXAgdGVuIGNhbiB0aW06ICI7CiAgICBnZXRsaW5lKGNpbiwgdHVraG9hKTsKCiAgICB0cmFuc2Zvcm0odHVraG9hLmJlZ2luKCksIHR1a2hvYS5lbmQoKSwgdHVraG9hLmJlZ2luKCksIDo6dG9sb3dlcik7CgogICAgY291dCA8PCAiXG5LZXQgcXVhIHRpbSBraWVtOlxuIjsKICAgIGJvb2wgdGltZHVvYyA9IGZhbHNlOwogICAgZm9yIChjb25zdCBhdXRvJiBsaWVuaGUgOiBkYW5oYmEpIHsKICAgICAgICBzdHJpbmcgdGVuID0gbGllbmhlLmdldE5hbWUoKTsKICAgICAgICBzdHJpbmcgdGVuX2xvd2VyID0gdGVuOwogICAgICAgIHRyYW5zZm9ybSh0ZW5fbG93ZXIuYmVnaW4oKSwgdGVuX2xvd2VyLmVuZCgpLCB0ZW5fbG93ZXIuYmVnaW4oKSwgOjp0b2xvd2VyKTsKCiAgICAgICAgaWYgKHRlbl9sb3dlci5maW5kKHR1a2hvYSkgIT0gc3RyaW5nOjpucG9zKSB7CiAgICAgICAgICAgIGxpZW5oZS5kaXNwbGF5KCk7CiAgICAgICAgICAgIHRpbWR1b2MgPSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBpZiAoIXRpbWR1b2MpIHsKICAgICAgICBjb3V0IDw8ICJLaG9uZyB0aW0gdGhheSBsaWVuIGhlIG5hbyFcbiI7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0K
stdout
Nhap ten can tim:
Ket qua tim kiem:
Ten: Nguyen Van A, So dien thoai: 0912345678
Ten: Tran Thi B, So dien thoai: 0987654321
Ten: Le Van C, So dien thoai: 0934567890
Ten: Pham Thi D, So dien thoai: 0945678901
Ten: Nguyen Van E, So dien thoai: 0956789012
Ten: Tran Van F, So dien thoai: 0967890123
Ten: Le Thi G, So dien thoai: 0978901234
Ten: Pham Van H, So dien thoai: 0989012345
Ten: Nguyen Thi I, So dien thoai: 0990123456
Ten: Le Van J, So dien thoai: 0901234567