Advertisement
Guest User

Tutorial 10, Zadatak 2, TP

a guest
May 29th, 2015
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.27 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. using namespace std;
  4.  
  5. const double PI = 4 * atan(1.0);
  6. class Ugao
  7. {
  8.     int stepeni, minute, sekunde;
  9.     void Normaliziraj();
  10. public:
  11.  
  12.     Ugao(double radijani = 0)
  13.     {
  14.         Postavi(radijani);
  15.     }
  16.     Ugao(int stepeni, int minute, int sekunde)
  17.     {
  18.         Postavi(stepeni, minute, sekunde);
  19.     }
  20.     void Postavi(double radijani)
  21.     {
  22.         double s = radijani * 180 / PI;
  23.         stepeni = s;
  24.         double m =(s - stepeni) * 60;
  25.         minute = m;
  26.         sekunde = (m - minute) * 60;
  27.     }
  28.     void Postavi(int stepeni, int minute, int sekunde)
  29.     {
  30.         Ugao::stepeni = stepeni; Ugao::minute = minute; Ugao::sekunde = sekunde;
  31.     }
  32.     double DajRadijane() const
  33.     {
  34.         double s = stepeni + minute / 60. + sekunde / 3600.;
  35.         double radijani = s * PI / 180;
  36.         return radijani;
  37.     }
  38.     void OcitajKlasicneJedinice(int &stepeni, int &minute, int &sekunde)
  39.     {
  40.         stepeni = Ugao::stepeni; minute = Ugao::minute; sekunde = Ugao::sekunde;
  41.     }
  42.     int DajStepene() const
  43.     {
  44.         return stepeni;
  45.     }
  46.     int DajMinute() const
  47.     {
  48.         return minute;
  49.     }
  50.     int DajSekunde() const
  51.     {
  52.         return sekunde;
  53.     }
  54.     void Ispisi() const
  55.     {
  56.         cout << DajRadijane() << " radijana" << endl;
  57.     }
  58.     void IspisiKlasicno() const
  59.     {
  60.         cout << stepeni << " stepeni, " << minute << " minuta, " << sekunde << " i sekundi" << endl;
  61.     }
  62.     Ugao &SaberiSa(const Ugao &u)
  63.     {
  64.         Ugao u1;
  65.         u1.stepeni += u.stepeni; u1.minute += u.minute; u1.sekunde += u.sekunde;
  66.         return u1;
  67.     }
  68.     Ugao &PomnoziSa(double x)
  69.     {
  70.         Ugao u1;
  71.         u1.stepeni = stepeni * x; u1.minute = minute * x; u1.sekunde = sekunde * x;
  72.         return u1;
  73.     }
  74.     friend Ugao ZbirUglova(const Ugao &u1, const Ugao &u2);
  75.     friend Ugao ProduktUglaSaBrojem(const Ugao &u, double x);
  76. };
  77.  
  78. Ugao ZbirUglova(const Ugao &u1, const Ugao &u2)
  79. {
  80.     return{u1.stepeni + u2.stepeni, u1.minute + u2.minute, u1.sekunde + u2.sekunde};
  81. }
  82. Ugao ProduktUglaSaBrojem(const Ugao &u, double x)
  83. {
  84.     return{u.stepeni * x, u.minute * x, u.sekunde * x};
  85. }
  86. void Ugao::Normaliziraj()
  87. {
  88.  
  89. }
  90. int main()
  91. {
  92.     Ugao u(PI);
  93.  
  94.      return 0;
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement