<code = c++>
#include <cstdlib>
#include <iostream>
#include <list>
#include <conio.h>
#include <windows.h>
#include <fstream>
using namespace std;
list<string>lista;
//int wybor;
class osoba
{ public:
string imie ;
string nazwisko;
string miasto;
string ulica;
string numer;
//int id;
};
class spis : public osoba
{ public:
void push()
{
//string imie;
cout<<"Podaj imie:";
//cin.ignore();
getline(cin, imie);
lista.push_front(imie);
//string nazwisko;
cout<<"Podaj nazwisko:";
getline(cin, nazwisko);
lista.push_front(nazwisko);
//string miasto;
cout<<"Podaj miasto:";
getline(cin, miasto);
lista.push_front(miasto);
//string ulica;
cout<<"Podaj ulice:";
getline(cin, ulica);
lista.push_front(ulica);
//string numer;
cout<<"Podaj numer telefonu (stacjonarnego):";
getline(cin, numer);
lista.push_front(numer);
};
void remove()
{
cout<<"Usun z listy osobe.";
cout<<"Podaj nazwisko:";
cin>>nazwisko;
lista.remove(nazwisko);
};
void sort()
{cout<<"Lista sie posortuje.";
lista.sort();
};
/*void zapisz()
{
};
*/
/*void wysietl_cala_liste()
{
system("cls");
for(list<string>::iterator i=lista.begin(); i!=lista.end(); i++)
cout<<*i<<"";
cout<<endl;
};*/
void szukaj() //<- czyli wyszukaj i wyswietl
{
system("cls");
cout<<"Wyszukana osoba to:\n"<<imie<<""<<nazwisko<<"\n";
cout<<"Miasto to:\n"<<miasto<<"\n";
cout<<"Ulica to:\n"<<ulica<<"\n";
cout<<"Numer telefonu(stacjonarnego) to:\n"<<numer<<"\n";
};
};
int main(int argc, char *argv[])
{
string wyb ;
int a;
spis ktos;
spis osob;
char szukaj [20];
int dlugosc, miejsce;
{
poczatek:
cout<<("Ksiazka telefoniczna \n\n\n");
cout<<("Menu:\n\n");
cout<<"1) Wyszukaj osobe po nazwisku.\n\n";
cout<<"2) Wprowadz nowe dane do spisu.\n\n";
cout<<"3) Usun osobe po nazwisku.\n\n";
cout<<"4) Zmien wprowadzone dane w pliku.\n\n";
cout<<"5) Wyjdz.\n\n";
char wybierz;
cout<<"Wybierz opcje:";
cout<<endl;
wybierz=getch();
switch(wybierz)
{
case'1':
{
cout << "Podaj nazwisko szukanej osoby: ";
cin >> szukaj;
fstream plik;
plik.open( "Spis.txt", ios::in );
if( plik.good() )
{
//tu operacje na pliku (odczyt)
plik.seekg(0, ios::end);
dlugosc = plik.tellg();
miejsce = /*dlugosc*/sizeof(osob);
plik.seekg(0, ios::beg);
for(a=1;a<miejsce;a++)
{
plik.read((string*)&osob, sizeof(osoba));
if(!strcmp(osob.nazwisko,szukaj))
{
ktos.szukaj();
system("pause");
system("cls");
break;
}
}
plik.close();
}
if(a==miejsce)
{
cout << "Blednie podano nazwisko. Sprobuj ponownie!\n";
getchar();
getchar();
system ("cls");
}
};