fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. void czytaj_punkt(double &x, double &y)
  5. {
  6. cout << "Podaj wspolrzedna x: ";
  7. cin >> x;
  8. cout << "Podaj wspolrzedna y: ";
  9. cin >> y;
  10. }
  11.  
  12. bool punkt_w_odcinku(double xA, double yA, double xB, double yB, double xP, double yP)
  13. {
  14. double iloczyn = (xP - xA) * (yB - yA) - (yP - yA) * (xB - xA);
  15.  
  16. if (iloczyn != 0)
  17. return false;
  18.  
  19. if (xP >= min(xA, xB) && xP <= max(xA, xB) &&
  20. yP >= min(yA, yB) && yP <= max(yA, yB))
  21. return true;
  22.  
  23. return false;
  24. }
  25.  
  26. int main()
  27. {
  28. double xA, yA, xB, yB, xP, yP;
  29.  
  30. cout << "Podaj wspolrzedne punktu A:\n";
  31. czytaj_punkt(xA, yA);
  32.  
  33. cout << "Podaj wspolrzedne punktu B:\n";
  34. czytaj_punkt(xB, yB);
  35.  
  36. cout << "Podaj wspolrzedne punktu P:\n";
  37. czytaj_punkt(xP, yP);
  38.  
  39. if (punkt_w_odcinku(xA, yA, xB, yB, xP, yP))
  40. cout << "Prawda - punkt P nalezy do odcinka AB\n";
  41. else
  42. cout << "Falsz - punkt P nie nalezy do odcinka AB\n";
  43.  
  44. return 0;
  45. }
Success #stdin #stdout 0s 5324KB
stdin
Standard input is empty
stdout
Podaj wspolrzedne punktu A:
Podaj wspolrzedna x: Podaj wspolrzedna y: Podaj wspolrzedne punktu B:
Podaj wspolrzedna x: Podaj wspolrzedna y: Podaj wspolrzedne punktu P:
Podaj wspolrzedna x: Podaj wspolrzedna y: Falsz - punkt P nie nalezy do odcinka AB