fork(1) download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. struct Punkt {
  5. double x;
  6. double y;
  7. };
  8.  
  9. double det(Punkt A, Punkt B, Punkt P) {
  10. return (B.x - A.x) * (P.y - A.y) - (B.y - A.y) * (P.x - A.x);
  11. }
  12.  
  13. Punkt czytaj_punkt(double x, double y) {
  14. Punkt p;
  15. p.x = x;
  16. p.y = y;
  17. return p;
  18. }
  19.  
  20. void punkty_po_stronie(Punkt A, Punkt B, Punkt P) {
  21. double d = det(A, B, P);
  22.  
  23. if (d > 0)
  24. cout << "Pkt. P lezy po lewej stronie prostej" << endl;
  25. else if (d < 0)
  26. cout << "Pkt. P lezy po prawej stronie prostej" << endl;
  27. else
  28. cout << "Pkt. P lezy na prostej" << endl;
  29. }
  30.  
  31. int main() {
  32. Punkt A = czytaj_punkt(1,1);
  33. Punkt B = czytaj_punkt(3,3);
  34. Punkt P = czytaj_punkt(3,0); // zmieniony punkt
  35.  
  36. punkty_po_stronie(A, B, P);
  37.  
  38. return 0;
  39. }
Success #stdin #stdout 0.01s 5328KB
stdin
1 2
3 -6
1 0
stdout
Pkt. P lezy po prawej stronie prostej