Пример. Составить программу для определения лежит ли точка (x3;y3), на прямой проходящей через точки (x1;y1),C(x2;y2) }
program z20;
uses crt;
var x1,x2,x3,y1,y2,y3 : real;
begin
clrscr;
write('x1=');readln(x1);
write('y1=');readln(y1);
write('x2=');readln(x2);
write('y2=');readln(y2);
write('x3=');readln(x3);
write('y3=');readln(y3);
if (x3-x1)*(y2-y1)-(y3-y1)*(x2-x1)=0
then write('лежит')
else write('не лежит');
readln;
end.
2008-02-24 • Просмотров [ 8643 ]
0.00000000000001 = 0. В таком случае будет ответ - не лежит.
Нужно так if abs((x3-x1)*(y2-y1)-(y3-y1)*(x2-x1)) < 0.001 then