В строке с условиями не хватает скобок. Вот рабочий вариант вашей программы: program _1;
var x, y, x1, y1, x2, y2, x3, y3: real;
begin write('Введите координаты точки(х,у)');read(x, y); write('Введите координаты первой вершины треугольника(х1,у1)'); read(x1, y1); write('Введите координаты второй вершины треугольника(х2,у2)'); read(x2, y2); write('Введите координаты третьей вершины треугольника(х3,у3)'); read(x3, y3); if (((x - x2) / (x2 - x1) - (y - y2) / (y2 - y1)) <= 0) and (((x - x3) / (x3 - x2) - (y - y3) / (y3 - y2)) <= 0) and (((x - x3) / (x3 - x1) - (y - y3) / (y3 - y1)) >= 0) then writeln('Точка с введенными вами координатами принадлежит треугольнику') else writeln('Точка с введенными вами координатами не принадлежит треугольнику'); end.
Тестовое решение: Введите координаты точки(х,у)5.2 4.7 Введите координаты первой вершины треугольника(х1,у1)1.1 2.1 Введите координаты второй вершины треугольника(х2,у2)8.3 9.1 Введите координаты третьей вершины треугольника(х3,у3)0.1 10.5 Точка с введенными вами координатами не принадлежит треугольнику
program _1;
var
x, y, x1, y1, x2, y2, x3, y3: real;
begin
write('Введите координаты точки(х,у)');read(x, y);
write('Введите координаты первой вершины треугольника(х1,у1)');
read(x1, y1);
write('Введите координаты второй вершины треугольника(х2,у2)');
read(x2, y2);
write('Введите координаты третьей вершины треугольника(х3,у3)');
read(x3, y3);
if (((x - x2) / (x2 - x1) - (y - y2) / (y2 - y1)) <= 0) and (((x - x3) / (x3 - x2) - (y - y3) / (y3 - y2)) <= 0) and (((x - x3) / (x3 - x1) - (y - y3) / (y3 - y1)) >= 0)
then writeln('Точка с введенными вами координатами принадлежит треугольнику') else writeln('Точка с введенными вами координатами не принадлежит треугольнику');
end.
Тестовое решение:
Введите координаты точки(х,у)5.2 4.7
Введите координаты первой вершины треугольника(х1,у1)1.1 2.1
Введите координаты второй вершины треугольника(х2,у2)8.3 9.1
Введите координаты третьей вершины треугольника(х3,у3)0.1 10.5
Точка с введенными вами координатами не принадлежит треугольнику