Advertisement
selebry

BASED 4_1_1

Mar 24th, 2022
1,130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.49 KB | None | 0 0
  1. //Base.h
  2. #ifndef BASE_H
  3. #define BASE_H
  4. #include <vector>
  5. class Base{
  6. protected:
  7.     std::vector<int> arr;
  8. };
  9. #endif
  10. //class1.h
  11. #ifndef CLASS1_H
  12. #define CLASS1_H
  13. #include "Base.h"
  14. #include <vector>
  15. class class1: protected virtual Base{
  16. protected:
  17.     void input();
  18. };
  19. #endif
  20. //class2.h
  21. #ifndef CLASS2_H
  22. #define CLASS2_H
  23. #include "Base.h"
  24. #include <vector>
  25. class class2: protected virtual Base{
  26. protected:
  27.     void sort();
  28.     void print(bool is_endl=true);
  29. };
  30. #endif
  31. //class3.h
  32. #ifndef CLASS3_H
  33. #define CLASS3_H
  34. #include "class2.h"
  35. #include "class1.h"
  36. #include <vector>
  37. class class3: private class1,private class2{
  38. public:
  39.     void call();
  40. };
  41. #endif
  42. //class1.cpp
  43. #include "class1.h"
  44. #include <vector>
  45. #include <iostream>
  46. using namespace std;
  47. void class1::input(){
  48.     int s;
  49.     cin>>s;
  50.     arr.resize(s);
  51.     for(int i=0;i<arr.size();i++) cin>>arr[i];
  52. }
  53. //class2.cpp
  54. #include "class2.h"
  55. #include <vector>
  56. #include <iostream>
  57. #include <iomanip>
  58. #include <algorithm>
  59. void class2::sort(){
  60.     std::sort(arr.begin(),arr.end());
  61. }
  62. void class2::print(bool is_endl){
  63.     for(auto el: arr) std::cout<<std::setw(5)<<el;
  64.     (is_endl)?std::cout<<"\n":std::cout<<"";
  65. }
  66. //class3.cpp
  67. #include "class3.h"
  68. #include <iostream>
  69. using std::cout;
  70. void class3::call(){
  71.     input();
  72.     cout<<"Array dimension: "<<arr.size()<<'\n';
  73.     cout<<"The original array:";
  74.     print();
  75.     sort();
  76.     cout<<"An ordered array:";
  77.     print(0);
  78. }
  79. //main.cpp
  80. #include "class3.h"
  81. int main()
  82. {
  83.     class3 c3;
  84.     c3.call();
  85.     return(0);
  86. }
  87.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement