35657

Untitled

Jun 7th, 2023
709
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.92 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3.  
  4. using namespace std;
  5.  
  6.  
  7. template<typename T>
  8. class Array {
  9.  
  10. public:
  11.  
  12.     int getSize() const {
  13.         return size;
  14.     }
  15.  
  16.     T getItem(size_t index) const {
  17.         if (index >= 0 && index < size) {
  18.             return arr[index];
  19.         }
  20.     }
  21.  
  22.     void setItem(size_t index, T value) {
  23.         if (index >= 0 && index < size) {
  24.             arr[index] = value;
  25.         }
  26.     }
  27.  
  28.     void display() {
  29.         for (int i = 0; i < size; i++) {
  30.             cout << arr[i] << " ";
  31.         }
  32.         cout << endl;
  33.     }
  34.  
  35.     void sort() {
  36.         for (int k = 0; k < size; k++) {
  37.             for (int j = 0; j < size - 1; j++) {
  38.                 if (arr[j] > arr[j + 1]) {
  39.                     T temp = arr[j];
  40.                     arr[j] = arr[j + 1];
  41.                     arr[j + 1] = temp;
  42.                 }
  43.             }
  44.         }
  45.     }
  46.  
  47. private:
  48.     static const size_t size = 5;
  49.     T arr[size]{};
  50. };
  51.  
  52. int main() {
  53.  
  54.     cout << "Class Tempate Array" << endl << endl;
  55.  
  56.     Array<int> intArray;
  57.     cout << "int Array initialization:" << endl;
  58.     intArray.display();
  59.     int size = intArray.getSize();
  60.     for (int i = 0; i < size; i++) {
  61.         intArray.setItem(i, rand() % 10);
  62.     }
  63.     cout << endl << "int Array after assignment:" << endl;
  64.     intArray.display();
  65.     intArray.sort();
  66.     cout << endl << "int Array after ordering:" << endl;
  67.     intArray.display();
  68.     cout << endl;
  69.  
  70.     Array<string> strArray;
  71.     cout << "str Array initialization:" << endl;
  72.     strArray.display();
  73.     strArray.setItem(0, "two");
  74.     strArray.setItem(1, "seven");
  75.     strArray.setItem(2, "zero");
  76.     strArray.setItem(3, "four");
  77.     strArray.setItem(4, "one");
  78.     cout << endl << "str Array after assignment:" << endl;
  79.     strArray.display();
  80.     strArray.sort();
  81.     cout << endl << "str Array after ordering:" << endl;
  82.     strArray.display();
  83. }
  84.  
Advertisement
Add Comment
Please, Sign In to add comment