Advertisement
Guest User

Untitled

a guest
Jun 2nd, 2015
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.71 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Saraksts
  6. {
  7.     private:
  8.  
  9.     const static int MAX_IZMERS = 100;
  10.     int izmers;
  11.     double saraksts[MAX_IZMERS];
  12.  
  13.     public:
  14.  
  15.     Saraksts();
  16.     int getIzmers();
  17.  
  18.     double at(int a);
  19.     int pievienot(double a);
  20.     void dzestPedejo();
  21.  
  22.     friend ostream & operator << (ostream &os,Saraksts a);
  23.  
  24.     double& operator[] (const int index);
  25.  
  26. };
  27.  
  28. class TemperaturasSaraksts: public Saraksts{
  29.     private:
  30.  
  31.     public:
  32.  
  33.     double augstaka();
  34.     double zemaka();
  35.     double videja();
  36. };
  37.  
  38.  
  39.  
  40. int main()
  41. {
  42.     Saraksts testob;
  43.     TemperaturasSaraksts testob2;
  44.  
  45.     testob.pievienot(150);
  46.     testob.pievienot(1);
  47.     testob.pievienot(3);
  48.     testob.pievienot(4);
  49.     testob.pievienot(6);
  50.     testob.pievienot(45);
  51.     testob.pievienot(11);
  52.  
  53.  
  54.     cout<<testob;
  55.  
  56.     testob.dzestPedejo();
  57.     testob.dzestPedejo();
  58.  
  59.     cout<<"-->"<<testob[0]<<endl;
  60.     testob [0] =1111;
  61.     cout<<"-->"<<testob[0]<<endl;
  62.  
  63.     cout<<"========================"<<endl;
  64.     testob2.pievienot(23);
  65.     testob2.pievienot(51);
  66.     testob2.pievienot(32);
  67.     testob2.pievienot(33.4);
  68.     testob2.pievienot(53.2223);
  69.  
  70.     cout<<testob2;
  71.  
  72.     cout<<"Lielaka: "<<testob2.augstaka()<<endl;
  73.     cout<<"Mazaka: "<<testob2.zemaka()<<endl;
  74.     cout<<"Videja: "<<testob2.videja()<<endl;
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.     return 0;
  82. }
  83.  
  84.  
  85. Saraksts::Saraksts()
  86. {
  87.     for(int i=0;i<MAX_IZMERS;i++)
  88.     {
  89.         saraksts[i]=0;
  90.     }
  91.     izmers=0;
  92. }
  93.  
  94. int Saraksts::getIzmers()
  95. {
  96.     return izmers;
  97. }
  98.  
  99. double Saraksts::at(int a)
  100. {
  101.     try
  102.     {
  103.         if(a>=0 && a<izmers)
  104.         {
  105.             return saraksts[a];
  106.         }
  107.         else
  108.         {
  109.             throw a;
  110.         }
  111.     }
  112.     catch(int e){
  113.               cout<<"Skaitlis "<<e<<" ir arpus robezas"<<endl;
  114.     }
  115.  
  116.  
  117.  
  118. }
  119.  
  120. int Saraksts::pievienot(double a)
  121. {
  122.     try
  123.     {
  124.         if(izmers>MAX_IZMERS)
  125.         {
  126.             throw 1;
  127.         }
  128.         else
  129.         {
  130.             saraksts[izmers]=a;
  131.             izmers++;
  132.         }
  133.     }
  134.     catch(int e){cout<<"MAX izmers parsniegts"<<endl;}
  135. }
  136.  
  137. void Saraksts::dzestPedejo()
  138. {
  139.     try
  140.     {
  141.         if(izmers==0)
  142.         {
  143.             throw 1;
  144.         }
  145.         else
  146.         {
  147.             izmers--;
  148.         }
  149.     }
  150.     catch(int e){
  151.               cout<<"blank list!"<<endl;
  152.               }
  153. }
  154.  
  155. ostream & operator << (ostream &os,Saraksts a)
  156. {
  157.     for(int i=0;i<a.getIzmers();i++)
  158.     {
  159.         os<<a.at(i)<<endl;
  160.     }
  161. }
  162.  
  163.  
  164. double& Saraksts::operator[] (const int index)
  165. {
  166.     return saraksts[index];
  167. }
  168.  
  169.  
  170.  
  171. double TemperaturasSaraksts::augstaka()
  172. {
  173.     double temp=0;
  174.  
  175.     for(int i=0;i<getIzmers();i++)
  176.     {
  177.         if(at(i)>temp)
  178.         {
  179.             temp=at(i);
  180.         }
  181.     }
  182.     return temp;
  183. }
  184.  
  185. double TemperaturasSaraksts::zemaka()
  186. {
  187.     double temp=at(0);
  188.  
  189.     for(int i=0;i<getIzmers();i++)
  190.     {
  191.         if(at(i)<temp)
  192.         {
  193.             temp=at(i);
  194.         }
  195.     }
  196.     return temp;
  197. }
  198.  
  199. double TemperaturasSaraksts::videja()
  200. {
  201.     double summ=0;
  202.  
  203.     for(int i=0;i<getIzmers();i++)
  204.     {
  205.         summ=at(i)+summ;
  206.     }
  207.  
  208.     return summ/getIzmers();
  209. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement