fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. // Funkcja wczytująca punkt
  5. void punkt(double &x, double &y) {
  6. cin >> x >> y;
  7. }
  8.  
  9. // Funkcja sprawdzająca czy dwa punkty leżą po tej samej stronie prostej
  10. bool po_stronie(double A, double B, double C,
  11. double x1, double y1,
  12. double x2, double y2) {
  13.  
  14. double w1 = A * x1 + B * y1 + C;
  15. double w2 = A * x2 + B * y2 + C;
  16.  
  17. return (w1 * w2 > 0);
  18. }
  19.  
  20. int main() {
  21. double A = 1, B = -1, C = 0;
  22.  
  23. double xP1 = 1, yP1 = 0;
  24. double xP2 = 1, yP2 = 2;
  25. double xP3 = -1, yP3 = 0;
  26. double xP4 = 2, yP4 = 2.2;
  27.  
  28. bool para1 = po_stronie(A, B, C, xP1, yP1, xP2, yP2);
  29. bool para2 = po_stronie(A, B, C, xP3, yP3, xP4, yP4);
  30.  
  31. if (para1 && para2)
  32. cout << "Punkty leza po tej samej stronie prostej";
  33. else
  34. cout << "Punkty nie leza po tej samej stronie prostej";
  35.  
  36. return 0;
  37. }
Success #stdin #stdout 0.01s 5272KB
stdin
Standard input is empty
stdout
Punkty nie leza po tej samej stronie prostej