Advertisement
AmarBiH

Stek - zadatak sa prezentacije

May 26th, 2019
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.30 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. class Stek
  5. {
  6.     int *niz_brojeva;
  7.     int brojac;
  8.    
  9.     public:
  10.         Stek(int n): brojac(0){niz_brojeva = new int[100];} //konstruktor
  11.         Stek(){} //prazni konstruktor
  12.         ~Stek(){delete[] niz_brojeva;} //destruktor
  13.        
  14.         void Unos();
  15.         void UzmiNBrojeva_Zbir(int);   
  16.         void Ispis();
  17. };
  18.  
  19.     void Stek::UzmiNBrojeva_Zbir(int n)
  20.     {
  21.         cout << "U steku ima " << this->brojac << " clanova!\n";
  22.         cout << "Koliko brojeva zelite uzeti iz steka: ";
  23.         unsigned short int temp;
  24.         do
  25.         {
  26.             cin >> temp;
  27.         }while(temp > this->brojac);
  28.        
  29.         int suma = 0;
  30.         for(int i(this->brojac); i >= this->brojac - temp; --i)
  31.         {
  32.             suma += this->niz_brojeva[i];
  33.         }
  34.        
  35.         cout << "Suma " << temp << " clanova steka je: " << suma << endl; //suma
  36.         brojac -= temp;
  37.     }
  38.    
  39.     void Stek::Unos()
  40.     {
  41.         cout << "Unesite brojeve: (unos -1 za kraj)\n";
  42.         while(true)
  43.         {
  44.             int temp;
  45.             cin >> temp;
  46.             if(temp == -1)
  47.             {
  48.                 break;
  49.             }
  50.             this->niz_brojeva[this->brojac] = temp;
  51.             this->brojac += 1;
  52.         }
  53.     }
  54.    
  55.     void Stek::Ispis()
  56.     {
  57.         for(int i(this->brojac - 1); i>=0; --i)
  58.         {
  59.             cout << this->niz_brojeva[i] << " ";
  60.         }
  61.         cout << endl;
  62.     }
  63.  
  64. int main()
  65. {
  66.   Stek stek(3);
  67.   stek.Unos();
  68.   stek.UzmiNBrojeva_Zbir(3);
  69.   stek.Ispis();
  70.   stek.Unos();
  71.   stek.Ispis();
  72.  
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement