nocturnalmk

Untitled

Mar 27th, 2012
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.97 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Niza {
  6.  
  7.     private:
  8.         int kapacitet;
  9.         int tekoven;
  10.         int *lista;
  11.  
  12.     public:
  13.         Niza() {
  14.         }
  15.  
  16.         Niza(int size) {
  17.             this->kapacitet = size;
  18.             this->tekoven = 0;
  19.             lista = new int[size];
  20.         }
  21.  
  22.         int &operator[](int i) {
  23.             if (i >= 0 && i < tekoven) {
  24.                 return lista[i];
  25.             }
  26.         }
  27.  
  28.         int getKapacitet() {
  29.             return kapacitet;
  30.         }
  31.  
  32.         int getTekoven() {
  33.             return tekoven;
  34.         }
  35.  
  36.         Niza &operator=(Niza &n) {
  37.             if (this != &n) {
  38.                 kapacitet = n.kapacitet;
  39.                 tekoven = n.tekoven;
  40.                 lista = new int[kapacitet];
  41.  
  42.                 for (int i = 0; i < tekoven; i++) {
  43.                     lista[i] = n.lista[i];
  44.                 }
  45.             }
  46.  
  47.             return *this;
  48.         }
  49.  
  50.         Niza &operator+=(int a) {
  51.             if (tekoven < kapacitet) {
  52.                 lista[tekoven++] = a;
  53.             } else {
  54.                 int *tmp;
  55.                 kapacitet *= 2;
  56.                 tmp = new int[kapacitet];
  57.  
  58.                 for (int i = 0; i < tekoven; i++) {
  59.                     tmp[i] = lista[i];
  60.                 }
  61.                 tmp[tekoven+1] = a;
  62.  
  63.                 delete[] lista;
  64.                 lista = tmp;
  65.  
  66.             }
  67.  
  68.             return *this;
  69.         }
  70. };
  71.  
  72. int main() {
  73.  
  74.     int n, tmp;
  75.     cout << "Kolku broevi? ";      cin >> n;
  76.  
  77.     Niza broevi;
  78.  
  79.     for (int i = 0; i < n; i++) {
  80.         cin >> tmp;
  81.         broevi += tmp;
  82.     }
  83.  
  84.     cout << endl << endl;
  85.  
  86.     n = broevi.getKapacitet();
  87.  
  88.     cout << "Vneseni broevi: " << broevi.getTekoven() << endl;
  89.     cout << "Kapacitet: " << broevi.getKapacitet() << endl;
  90.     cout << "Lista na broevi: " << endl;
  91.  
  92.     for (int i = 0; i < n; i++) {
  93.         cout << "   " << broevi[i] << endl;
  94.     }
  95. }
Advertisement
Add Comment
Please, Sign In to add comment