Created
March 15, 2018 07:08
-
-
Save emirozturk/3f3c7242320ca81c47a25ebffd59bbb8 to your computer and use it in GitHub Desktop.
NYP 4. Hafta
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
#include <string> | |
#include <vector> | |
using namespace std; | |
class kisi { | |
private: | |
string ad; | |
public: | |
kisi(string ad) { | |
this->ad = ad; | |
} | |
kisi() {} | |
string adAl() { | |
return ad; | |
} | |
}; | |
class kisiListesi { | |
private: | |
vector<kisi> liste; | |
public: | |
void ekle(kisi k) { | |
liste.push_back(k); | |
} | |
kisi kisiBul(string isim) { | |
for (int i = 0; i < liste.size(); i++) | |
if (liste[i].adAl() == isim) | |
return liste[i]; | |
return kisi(); | |
} | |
}; | |
class kayit { | |
private: | |
kisi gonderen; | |
kisi alici; | |
string mesaj; | |
public: | |
kayit(kisi gonderen, kisi alici, string mesaj) { | |
this->gonderen = gonderen; | |
this->alici = alici; | |
this->mesaj = mesaj; | |
} | |
kisi gonderenAl() { | |
return gonderen; | |
} | |
kisi aliciAl() { | |
return alici; | |
} | |
string mesajAl() { | |
return mesaj; | |
} | |
}; | |
class kayitListesi { | |
private: | |
vector<kayit> liste; | |
public: | |
void ekle(kayit k) | |
{ | |
liste.push_back(k); | |
} | |
vector<kayit> kayitBul(string kisiAdi) | |
{ | |
vector<kayit> sonuclar; | |
for (int i = 0; i < liste.size(); i++) | |
if (liste[i].aliciAl().adAl() == kisiAdi) | |
sonuclar.push_back(liste[i]); | |
return sonuclar; | |
} | |
}; | |
kisiListesi kisiler; | |
kayitListesi kayitlar; | |
void kisiEkle() | |
{ | |
string ad; | |
cout << "Kisi adini giriniz:"; | |
cin >> ad; | |
kisi k(ad); | |
kisiler.ekle(k); | |
} | |
void mesajAt() | |
{ | |
string gonderen, alici, mesaj; | |
cout << "Gonderen giriniz:"; | |
cin >> gonderen; | |
kisi gonderenK = kisiler.kisiBul(gonderen); | |
cout << "Alici giriniz:"; | |
cin >> alici; | |
kisi aliciK = kisiler.kisiBul(alici); | |
cout << "Mesaj giriniz:"; | |
cin >> mesaj; | |
kayitlar.ekle(kayit(gonderenK, aliciK, mesaj)); | |
} | |
void ara() | |
{ | |
string aranacak; | |
cout << "Hangi kullaniciya gelen mesajlar aranacak:"; | |
cin >> aranacak; | |
vector<kayit> sonuc = kayitlar.kayitBul(aranacak); | |
for (int i = 0; i < sonuc.size(); i++) | |
cout << sonuc[i].gonderenAl().adAl() << "-" << sonuc[i].mesajAl() << endl; | |
} | |
int main() | |
{ | |
int secim = 0; | |
do | |
{ | |
cout << "1. Kisi Ekle" << endl; | |
cout << "2. Mesaj At" << endl; | |
cout << "3. Ara" << endl; | |
cout << "4. Cikis" << endl; | |
cout << "Secim:"; | |
cin >> secim; | |
if (secim == 1)kisiEkle(); | |
if (secim == 2)mesajAt(); | |
if (secim == 3)ara(); | |
} while (secim != 4); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment