Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <iomanip>
- #include <string.h>
- #include <conio.h>
- #include <windows.h>
- using namespace std;
- struct slujitel {
- char name[20];
- int EGN;
- char dlujnost[20];
- int timeWorked;
- double zaplata;
- int childsUnder18;
- double zaem;
- };
- int N=0;
- void menu()
- { system("cls");
- cout<<"******************************* \n";
- cout<<"* VARIANTI * \n";
- cout<<"* * \n";
- cout<<"* 1: Vuvedi danni * \n";
- cout<<"* 2: Pokaji danni * \n";
- cout<<"* 3: Smqna na dlujnost * \n";
- cout<<"* 4: Smqna na zaem * \n";
- cout<<"* 5: Smqna na zaplata * \n";
- cout<<"* 6: Triene na slujitel * \n";
- cout<<"* 7: Sredna zaplata * \n";
- cout<<"* 8: Zaplata za X dni * \n";
- cout<<"* 9: Min / Max Zaplata * \n";
- cout<<"* * \n";
- cout<<"* 0: Kraj * \n";
- cout<<"******************************* \n\n";
- cout<<" Izberi variant 1- 8 : ";
- }
- void pause()
- {
- cout<<" \n Natisni klavish da produlji ! \n";
- getch();
- }
- void read_slujitel(slujitel&);
- void print_slujitel(const slujitel&);
- void Aktual(slujitel x[],int n);
- void Aktual1(slujitel x[],int n);
- void Aktual2(slujitel x[],int n);
- void Del(slujitel x[], int n);
- void Average (slujitel[], int n);
- void zaplataZaXDni (slujitel x[], int n);
- void MinANDMax (slujitel x[], int n);
- int main(){
- cout << setprecision(2) << setiosflags(ios::fixed);
- slujitel MS[10];
- int v;
- do
- {
- menu();
- cin>>v;
- switch (v)
- {
- case 1: read_slujitel(MS[N]);N++; pause();break;
- case 2: for(int i=0;i<N;i++)print_slujitel(MS[i]); pause();break; pause();break;
- case 3: Aktual(MS,N); pause();break;
- case 4: Aktual1(MS,N); pause();break;
- case 5: Aktual2(MS,N); pause();break;
- case 6: Del(MS,N); pause();break;
- case 7: Average(MS,N); pause();break;
- case 8: zaplataZaXDni(MS,N); pause();break;
- case 9: MinANDMax (MS,N); pause();break;
- }
- }
- while (v!=0);
- return 0;
- }
- void read_slujitel(slujitel& s){
- cout<<"Ime na slujitelq: ";
- cin>>s.name;
- cout << "Egn: ";
- cin>>s.EGN;
- cout<<"Dlujnost: ";
- cin>>s.dlujnost;
- cout<<"Trudov staj: ";
- cin>>s.timeWorked;
- cout<<"Zaplata: ";
- cin>>s.zaplata;
- cout<<"Broi deca pod 18: ";
- cin>>s.childsUnder18;
- cout<<"Razmer na zaema: ";
- cin>>s.zaem;
- }
- void print_slujitel(const slujitel& s){
- cout <<s.name << setw(15) << s.EGN<<setw(15);
- cout<<s.dlujnost<<setw(15)<<s.timeWorked<<setw(15)<<s.zaplata;
- cout<<setw(15)<<s.childsUnder18<<setw(15)<<s.zaem<<endl<<setw(34);
- cout<<'\r';
- }
- void Aktual(slujitel x[],int n)
- {int nom;
- cout<<"EGN za smqna na dlujnost: ";
- cin>>nom;
- int f=0;
- for(int i=0; i<n;i++)
- { if (x[i].EGN==nom)
- { f=1;
- cout<<"Napishete nova dlujnost: ";
- cin>>x[i].dlujnost;
- }
- }
- if (f==0) cout<<" Lipsva posochenoto EGN !!!";
- }
- void Aktual1(slujitel x[],int n){
- int nom;
- cout<<"EGN za smqna na zaem: ";
- cin>>nom;
- int f=0;
- for(int i=0; i<n;i++)
- { if (x[i].EGN==nom)
- { f=1;
- cout<<"Napishete nov zaem: ";
- cin>>x[i].zaem;
- }
- }
- if (f==0) cout<<" Lipsva posochenoto EGN !!!";
- }
- void Aktual2(slujitel x[],int n){
- int nom;
- cout<<"EGN za smqna na zaplata: ";
- cin>>nom;
- int f=0;
- for(int i=0; i<n;i++)
- { if (x[i].EGN==nom)
- { f=1;
- cout<<"Napishete nova zaplata: ";
- cin>>x[i].zaplata;
- }
- }
- if (f==0) cout<<" Lipsva posochenoto EGN !!!";
- }
- void Del(slujitel x[], int n )
- {int nom;
- cout<<"Zadaj EGN za Iztrivane: ";
- cin>>nom;
- int f=0;
- for(int i=0; i<n;i++)
- { if (x[i].EGN==nom)
- { f=1;
- for(int p=i; p<N-1;p++)
- x[p]=x[p+1];
- N--;
- }
- }
- if (f==0)cout<<" Lipsva takova EGN!!!";
- }
- void Average (slujitel x[], int n){
- double average = 0;
- double count = 0;
- for(int i=0; i<n;i++)
- {
- average += x[i].zaplata;
- count++;
- }
- average = average / count;
- cout<<average;
- }
- void zaplataZaXDni (slujitel x[], int n){
- int nom;
- cout<<"EGN za razbirane na zaplata: ";
- cin>>nom;
- int f=0;
- for(int i=0; i<n;i++)
- { if (x[i].EGN==nom)
- { f=1;
- int days;
- cout << "Vuvedete x dni: ";
- cin>>days;
- double oneDay = x[i].zaplata / 31;
- double zaplata = oneDay * days;
- cout << "Zaplata za x dni e: "<< zaplata<< endl;
- }
- }
- if (f==0) cout<<" Lipsva posochenoto EGN !!!";
- }
- void MinANDMax (slujitel x[], int n){
- int maxZaplata = -2147483647 - 1;
- string maxName ;
- int minZaplata = 2147483647;
- string minName ;
- for(int i=0; i<n;i++)
- {
- if (x[i].zaplata > maxZaplata){
- maxZaplata = x[i].zaplata;
- maxName = x[i].name;
- }
- if (x[i].zaplata < minZaplata){
- minZaplata = x[i].zaplata;
- minName = x[i].name;
- }
- }
- cout << "Max Zaplata: "<< maxName << endl;
- cout << "Min Zaplata: "<< minName;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement