Advertisement
Dimitrija

Laboratoriski 2 - 1 OOP

Mar 11th, 2021
784
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.10 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. /*
  5.  
  6. Да се дефинира класа Agol, во која се чуваат информации за:
  7.  
  8. степени, минути и секунди (int)
  9. Во класата да се реализираат:
  10.  
  11. конструктор по потреба
  12. методи за поставување на вредности на атрибутите на класата (set методи)
  13. метод за пресметување на вредноста на аголот во секунди
  14. Да се дефинира и метод за проверување на тоа дали внесениот агол е валиден, односно дали се внесени соодветни вредности за атрибутите (во границите кои ги дозволуваат).
  15.  
  16. For example:
  17.  
  18. Input  
  19. 15 20 20
  20. Result
  21. 55220
  22.  
  23. */
  24.  
  25.  
  26. class Agol {
  27.  
  28.     private:
  29.     int s;
  30.     int m;
  31.     int d;
  32.    
  33.     public:
  34.    
  35.     Agol(){
  36.    
  37.    
  38.     }
  39.    
  40.     void set_stepeni(int deg){
  41.         d = deg;
  42.     }
  43.     void set_minuti(int min){
  44.         m = min;
  45.     }
  46.     void set_sekundi(int sec){
  47.         s = sec;
  48.     }
  49.    
  50.    
  51.     int to_sekundi(){
  52.    
  53.         return d*3600 + m*60 + s;
  54.    
  55.     }
  56.    
  57.     int getSekundi(){
  58.         return s;
  59.     }
  60.    
  61.  
  62. };
  63.  
  64.  
  65. bool changeOfSeconds(Agol a, int sec){
  66.     return a.getSekundi()!=sec;
  67. }
  68.  
  69.  
  70. int proveri(int deg,int min,int sec){
  71.  
  72. if (((min+sec+deg) <= 180) && deg >= 0 && min >= 0 && sec >= 0 && min <= 60 && sec <= 60){
  73.     return 1;
  74. }
  75. else{
  76.     printf("Nevalidni vrednosti za agol");
  77.     return 0;
  78. }
  79.  
  80. }
  81.  
  82.  
  83.  
  84. int main() {
  85.    
  86.     Agol a1;
  87.     //da se instancira objekt od klasata Agol
  88.     int deg, min, sec;
  89.     cin >> deg >> min >> sec;
  90.    
  91.     if (proveri(deg, min, sec)) {
  92.    
  93.         a1.set_stepeni(deg);
  94.         a1.set_minuti(min);
  95.         a1.set_sekundi(sec);
  96.         cout << a1.to_sekundi();
  97.         if (changeOfSeconds(a1,sec))
  98.             cout << "Ne smeete da gi menuvate sekundite vo ramkite na klasata!" << endl;
  99.        
  100.     }
  101.    
  102.     return 0;
  103. }
  104.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement