fork download
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. class Date
  7. {
  8. public:
  9. int day;
  10. int month;
  11. int year;
  12. Date(){day=0;month=0;year=0;}
  13. Date(int d,int m,int y){day=d;month=m;year=y;}
  14. void Print(){std::cout<<day<<"-"<<month<<"-"<<year<< std::endl;}
  15. };
  16.  
  17. class Student
  18. {
  19. public:
  20. int id;
  21. std::string name;
  22. double gpa;
  23. Date dob;
  24. Student(){id=0;name="";gpa=0;}
  25. Student(int i, std::string n, double g, Date d){ id = i; name = n; gpa = g; dob = d; }
  26. void Print(){ std::cout << "id=" << id << ", name=" << name << ", gpa=" << gpa << ", DOB="; dob.Print(); }
  27. };
  28.  
  29. class Department
  30. {
  31. public:
  32. std::string name;
  33. int numOfStudents;
  34. std::string chair;
  35. Student students[100];
  36. Department(){name="";numOfStudents=0;chair="";}
  37. Department(std::string n, std::string c){ name = n; chair = c; numOfStudents = 0; }
  38. void Print(){ std::cout << "Department=" << name << ", # of students=" << numOfStudents << ", Chair=" << chair << std::endl; }
  39. void PrintStudents(){for(int i=0; i<numOfStudents; i++) students[i].Print();}
  40. void AddStudent(Student s)
  41. {
  42. students[numOfStudents]=s;
  43. numOfStudents++;
  44. }
  45. void DeleteStudent(int id){}
  46. };
  47.  
  48. class College
  49. {
  50. public:
  51. std::string name;
  52. int numOfStudents;
  53. std::string dean;
  54. Department departments[10];
  55. int numOfDepartments;
  56. College(){name="";numOfStudents=0;dean="";numOfDepartments=0;}
  57. College(std::string n, std::string d){ name = n; dean = d; numOfStudents = 0; numOfDepartments = 0; }
  58. void Print(){ std::cout << "College=" << name << ", # of students=" << numOfStudents << ", Dean=" << dean << std::endl; }
  59. void PrintDepartments(){for(int i=0; i<numOfDepartments; i++) departments[i].Print();}
  60. void AddDepartment(Department s){departments[numOfDepartments]=s;numOfDepartments++;numOfStudents+=s.numOfStudents;}
  61. void DeleteDepartment(string name){}
  62. };
  63.  
  64. class University
  65. {
  66. public:
  67. string name;
  68. int numOfStudents;
  69. string rector;
  70. College colleges[10];
  71. int numOfColleges;
  72. University(){name="";numOfStudents=0;rector="";numOfColleges=0;}
  73. University(string n, string r){name=n;rector=r;numOfStudents=0;numOfColleges=0;}
  74. void Print(){cout<<"University="<<name<<", # of students="<<numOfStudents<<", Rector="<<rector<<endl;}
  75. void PrintColleges(){for(int i=0; i<numOfColleges; i++) colleges[i].Print();}
  76. void AddCollege(College c){colleges[numOfColleges]=c;numOfColleges++;numOfStudents+=c.numOfStudents;}
  77. void DeleteCollege(string name){}
  78. };
  79.  
  80. int main()
  81. {
  82. cout << sizeof(University) << "\n";
  83. cout << sizeof(College) << "\n";
  84. cout << sizeof(Department);
  85. }
  86.  
Success #stdin #stdout 0s 3096KB
stdin
Standard input is empty
stdout
281376
28136
2812