Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program _3B;
- type
- Point = record
- x, y : Integer;
- end;
- var
- a, b, p, ab, ap: Point;
- cross : Integer;
- begin
- ReadLn(p.x, p.y);
- Read(a.x, a.y);
- ReadLn(b.x, b.y);
- (* Считаем вектора AB и AP *)
- ab.x := b.x - a.x;
- ab.y := b.y - a.y;
- ap.x := p.x - a.x;
- ap.y := p.y - a.y;
- (* Векторное произведение векторов AB * AP *)
- cross := ab.x * ap.y - ab.y * ap.x;
- (* Если оно нуль, то точка P лежит на прямой через A и B *)
- if cross = 0 then begin
- WriteLn('YES');
- end else begin
- WriteLn('NO');
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment