fork download
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. struct punkt
  6. {
  7. float x, y;
  8. };
  9.  
  10. void wczytaj_punkt(punkt &p, float x, float y)
  11. {
  12. p.x = x;
  13. p.y = y;
  14. }
  15.  
  16. bool po_tej_samej_stronie(punkt p1, punkt p2, float A, float B, float C)
  17. {
  18. float wartosc1 = A * p1.x + B * p1.y + C;
  19. float wartosc2 = A * p2.x + B * p2.y + C;
  20.  
  21. // Punkty są po tej samej stronie,
  22. // jeśli iloczyn wartości jest dodatni
  23. if (wartosc1 * wartosc2 > 0)
  24. return true;
  25. else
  26. return false;
  27. }
  28.  
  29. int main()
  30. {
  31. punkt P1, P2;
  32.  
  33. // Dane punktów
  34. wczytaj_punkt(P1, 1, 0);
  35. wczytaj_punkt(P2, 1, 2);
  36.  
  37. float A = 1;
  38. float B = -1;
  39. float C = 0;
  40.  
  41. if (po_tej_samej_stronie(P1, P2, A, B, C))
  42. cout << "punkty leza po tej samej stronie prostej" << endl;
  43. else
  44. cout << "punkty nie leza po tej samej stronie prostej" << endl;
  45.  
  46. return 0;
  47. }
Success #stdin #stdout 0.01s 5320KB
stdin
Standard input is empty
stdout
punkty nie leza po tej samej stronie prostej