Advertisement
mali_programer

Klasa-robot-s10(6)

Sep 3rd, 2015
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.67 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <iomanip>
  4.  
  5. using namespace std;
  6.  
  7.  
  8. class Robot
  9. {
  10.  
  11.     double x, y, ugao;
  12. public:
  13. Robot() {x = 0; y = 0; ugao = 0;}
  14. Robot(double ugao) {x = 0; y = 0; Robot::ugao = ugao;}
  15. Robot (double x, double y, double ugao) {Postavi(x, y, ugao);}
  16. void Postavi(double x, double y, double u);
  17. void IdiNaprijed(double pomak);
  18. void IdiNazad(double pomak);
  19. void OkreniSeNalijevo(double ugao);
  20. void OkreniSeNadesno(double ugao);
  21. double DajPozicijuX() const {return x;}
  22. double DajPozicijuY() const {return y;}
  23. double DajOrjentaciju() const {return ugao;}
  24. void Ispisi() const
  25. {
  26.  
  27.     cout << "Robot se nalazi na poziciji (" << x <<","<<
  28.      y << ") i gleda pod uglom od " << ugao
  29.     << "stepeni u odnosu na x-osu."<< endl;
  30.  
  31. }
  32.  
  33.  
  34. };
  35. void Robot::Postavi(double x, double y, double ugao)
  36. {
  37.         Robot::ugao = ugao;
  38.         Robot::x = x;
  39.         Robot::y = y;
  40.  
  41. }
  42.  
  43. void Robot::IdiNazad(double pomak)
  44. {
  45.     double a, b;
  46.     Robot::x = a;
  47.     Robot::y = b;
  48.  
  49.     Robot::y = (sin(Robot::ugao) * (sqrt(a*a + b*b) - pomak));
  50.  
  51.     Robot:: x = (cos(Robot::ugao) * (sqrt(a*a + b*b) - pomak));
  52. }
  53. void Robot::IdiNaprijed(double pomak)
  54. {
  55.     double a, b;
  56.     Robot::x = a;
  57.     Robot::y = b;
  58.     Robot::y += (sin(Robot::ugao) * (sqrt(a*a + b*b) + pomak)) -  b;
  59.  
  60.     Robot:: x += (cos(Robot::ugao) * (sqrt(a*a + b*b) + pomak)) - a;
  61. }
  62. void Robot::OkreniSeNadesno(double ugao)
  63. {
  64.     Robot::ugao -= ugao;
  65. }
  66.  
  67. void Robot::OkreniSeNalijevo(double ugao)
  68. {
  69.    Robot::ugao -= ugao;
  70. }
  71. int main()
  72. {
  73.     Robot r(45);
  74.  
  75.     r.Ispisi();
  76.  
  77.     r.IdiNaprijed(5);
  78.  
  79.  
  80.     r.Ispisi();
  81.  
  82.     r.IdiNazad(5);
  83.  
  84.     r.Ispisi();
  85.     return 0;
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement