fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. struct punkt
  5. {
  6. float x, y;
  7. };
  8.  
  9. void wczytaj_punkt(punkt &p)
  10. {
  11. cout << "Podaj wspolrzedne punktu (x y): ";
  12. cin >> p.x >> p.y;
  13. }
  14.  
  15. bool po_tej_samej_stronie(float A, float B, float C, punkt P1, punkt P2)
  16. {
  17. float wartosc1 = A * P1.x + B * P1.y + C;
  18. float wartosc2 = A * P2.x + B * P2.y + C;
  19.  
  20. return (wartosc1 * wartosc2 > 0);
  21. }
  22.  
  23. int main()
  24. {
  25. float A, B, C;
  26. punkt P1, P2;
  27.  
  28. cout << "Podaj wspolczynniki prostej (A B C): ";
  29. cin >> A >> B >> C;
  30.  
  31. if (A == 0 && B == 0)
  32. {
  33. cout << "Niepoprawne wspolczynniki prostej (A i B nie moga byc jednoczesnie zerowe).";
  34. return 0;
  35. }
  36.  
  37. cout << "\nPunkt P1:\n";
  38. wczytaj_punkt(P1);
  39.  
  40. cout << "Punkt P2:\n";
  41. wczytaj_punkt(P2);
  42.  
  43. if (po_tej_samej_stronie(A, B, C, P1, P2))
  44. cout << "\nPkt leza po tej samej stronie prostej.";
  45. else
  46. cout << "\nPkt nie leza po tej samej stronie prostej.";
  47.  
  48. return 0;
  49. }
Success #stdin #stdout 0.01s 5308KB
stdin
Standard input is empty
stdout
Podaj wspolczynniki prostej (A B C): 
Punkt P1:
Podaj wspolrzedne punktu (x y): Punkt P2:
Podaj wspolrzedne punktu (x y): 
Pkt nie leza po tej samej stronie prostej.