Advertisement
Guest User

Untitled

a guest
Feb 27th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.90 KB | None | 0 0
  1. #include <string>
  2. #include <iostream>
  3. #include <vector>
  4.  
  5. using namespace std;
  6. int suma=0;
  7. class Person
  8. {
  9.  
  10. private:
  11. string name;
  12. string surname;
  13. int birthYear;
  14.  
  15.  
  16. public:
  17.  
  18. void setName(string name) {
  19. this->name = name;
  20. }
  21. void setSurname(string surname) {
  22. this->surname = surname;
  23. }
  24. void setBirthYear(int birthYear) {
  25. this->birthYear = birthYear;
  26. }
  27.  
  28. const string getName() {
  29. return name;
  30. }
  31. const string getSurname() {
  32. return surname;
  33. }
  34. const int getBirthYear() {
  35. return birthYear;
  36. }
  37.  
  38. void setData(string name, string surname, int birthYear);
  39.  
  40. Person() {
  41. }
  42. Person(string name, string surname, int birthYear);
  43.  
  44. virtual int getExpense(){
  45. return 0;}
  46. int Suma(){
  47. return suma;}
  48. };
  49. void Person::setData(string name, string surname, int birthYear) {
  50. setName(name);
  51. setSurname(surname);
  52. setBirthYear(birthYear);
  53. }
  54.  
  55.  
  56. Person::Person(string name, string surname, int birthYear) {
  57. setData(name, surname, birthYear);
  58. }
  59. class Student : public Person {
  60.  
  61. int scolarship;
  62. public:
  63. getScolarship(){
  64. return scolarship;}
  65.  
  66. setScolarship(int scolarship){
  67. this->scolarship=scolarship;
  68. suma+=scolarship;
  69. }
  70. virtual int getExpense()
  71. {
  72. return scolarship;}
  73. };
  74. class Employee : public Person{
  75. private:
  76. int salary;
  77. int premia;
  78. public:
  79. int getSalary(){
  80. return salary;}
  81.  
  82. void setSalary(int salary){
  83. this->salary = salary;
  84. suma+=salary;
  85. }
  86. int getBonus(){
  87. premia=salary*0.2;
  88. suma+=premia;
  89. return premia;
  90. }
  91. virtual int getExpense()
  92. {
  93. return premia+salary;
  94. }
  95. };
  96. int main() {
  97. vector < Employee > pracownicy;
  98. vector < Student > studenci;
  99. Employee p;
  100. Student s;
  101. string imie,nazwisko;
  102. int i=1,uro,zar;
  103. char z;
  104.  
  105. do{
  106. cout<<"Dodac studenta czy pracownika?[s/p] ";cin>>z;
  107. if(z=='s'){
  108. cout<<"\nDodaj studenta: Imie,Nazwisko,Rok,Stypendium: ";
  109. cin>>imie>>nazwisko>>uro>>zar;
  110. s.setName(imie);
  111. s.setSurname(nazwisko);
  112. s.setBirthYear(uro);
  113. s.setScolarship(zar);
  114. studenci.push_back(s);
  115. }
  116. else if(z=='p'){
  117. cout<<"\nDodaj pracownika: Imie,Nazwisko,Rok,Zarobki: ";
  118. cin>>imie>>nazwisko>>uro>>zar;
  119. p.setName(imie);
  120. p.setSurname(nazwisko);
  121. p.setBirthYear(uro);
  122. p.setSalary(zar);
  123. p.getBonus();
  124. pracownicy.push_back(p);
  125. }
  126. cout<<"\nCzy chcesz dodac kolejna osobe?(0/1) ";
  127. cin>>i;
  128. }while(i>0);
  129. cout<<"\nKoszt calosciowy uczelni to: "<<suma;
  130. return 0;
  131. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement