prometheus800

Агол C++

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