#include <iostream>
#include <string.h>
#include <ctime>
#include <cstdlib>
using namespace std;
struct osoba
{
char imie[128];
char nazwisko[128];
int wiek;
int dochod[4];
int waga;
};
void maszyna_losujaca(osoba *tab, int rozmiar);
void wprowadz (osoba *tab, int rozmiar);
void wyswietl (osoba *tab, int rozmiar);
void sort_name(osoba *tab, int rozmiar);
int main()
{
srand(time(NULL));
int p;
int choice;
cout << "Prosze podac ile osob chce sie wpisac : ";
cin >> p;
osoba *people = new osoba[p];
wprowadz(people, p);
do
{
cout << "Aby wyswietlic dane wszystkich osob wcisnij 1 :" << '\n';
cout << "Aby wyswietlic dane wszystkich osob posrtowane po imieniu wcisnij 2 :" << '\n';
cout << "Aby wyswietlic dane wszystkich osob posrtowane po nazwisku wcisnij 3 :" << '\n';
cout << "Aby wyswietlic dane wszystkich osob, ktorych nazwiska zaczynaja sie na podana litere wcisnij 4 :" << '\n';
cout << "Wyjscie 5"<<'\n';
cin >> choice;
switch(choice)
{
case 1:
wyswietl(people, p);
break;
case 2:
sort_name(people, p);
wyswietl(people, p);
break;
}
}
while(choice >=1 && choice <5);
return 0;
}
void wprowadz (osoba *tab, int rozmiar)
{
maszyna_losujaca(tab, rozmiar);
for ( int i =0; i < rozmiar ; i++)
{
cout << "Podaj imie osoby nr " << i+1 << ": " << '\n';
cin >> tab[i].imie;
// cin.ignore(128, '\n');
cout << "Podaj nazwisko osoby nr " << i+1<< ": " << '\n';
cin >> tab[i].nazwisko;
//cin.ignore(128, '\n');
cout << "Podaj wiek osoby nr " << i+1<< ": " << '\n';
cin >> tab[i].wiek;
cout << "Dochod zostal przydzielony do poszczegolengo kwartalu"<<'\n';
cout << "Podaj wage osoby nr " << i+1<< ": " << '\n';
cin >> tab[i].waga;
}
}
void maszyna_losujaca(osoba *tab, int rozmiar)
{
for (int i =0; i < rozmiar; i++)
{
for (int j=0; j <4; j++)
{
tab[i].dochod[j] = rand()%2001 + 1000;
}
}
}
void wyswietl (osoba *tab, int rozmiar)
{
int j;
for ( int i=0; i < rozmiar; i++)
{
j=0;
cout << tab[i].imie<<'\n';
cout << tab[i].nazwisko<<'\n';
cout << "Wiek : " << tab[i].wiek<<'\n';
while(j<4)
{
cout <<"Kwartal "<< j+1 << ":";
cout << tab[i].dochod[j];
j++;
cout << " ";
}
cout << '\n';
cout << "Waga : " << tab[i].waga<<'\n';
}
}
void sort_name(osoba *tab, int rozmiar)
{
osoba tmp;
int i,j,z =0;
while ( i < rozmiar)
{
while (j < rozmiar -1)
{
z =0;
/*if (tab[j].imie[z] == tab[j+1].imie[z])
{
do
{
z++;
}while(tab[j].imie[z] == tab[j+1].imie[z]);
if (tab[j].imie[z] > tab[j+1].imie[z])
{
tmp = tab[j];
tab[j] = tab[j+1];
tab[j+1] = tmp;
}
}*/
if (tab[j].imie[z] > tab[j+1].imie[z])
{
tmp = tab[j];
tab[j] = tab[j+1];
tab[j+1] = tmp;
}
j++;
}
i++;
}
}