КМ
Константин Мостовой

Не пойму в чем дело, компиляция успешна, а когда ввожу значения, выдает ошибку 207:ошибка с плавающей запятой, ПОМОГИТЕ: (

program p2;
var x1,y1,x2,y2,x3,y3,P,r,S,AB,BC,AC:real;
begin
writeln('Vvedite znacheniya vseh x, y');
write('x1=');
readln(x1);
write('y1=');
readln(y1);
write('x2=');
readln(x2);
write('y2=');
readln(y2);
write('x3=');
readln(x3);
write('y3=');
readln(y3);
AB:=sqrt(sqr(x2-x1))+(sqr(y2-y1));
BC:=sqrt(sqr(x3-x2))+(sqr(y3-y2));
AC:=sqrt(sqr(x3-x1))+(sqr(y3-y1));
P:=AB+BC+AC;
r:=(AB+BC+AC)/2;
S:=sqrt(r*(r-AB)*(r-BC)*(r-AC));
writeln('S=');
writeln('P=');
readln;
end.

Azizjon
Azizjon

Для начала сравни
AB:=sqrt(sqr(x2-x1))+(sqr(y2-y1));
и
AB:=sqrt(sqr(x2-x1)+sqr(y2-y1));

Аккуратнее со скобками. . .

--
и мелкое дополнение
r:=(AB+BC+AC)/2; - зачем лишний раз складывать, тратя ресурс, если P уже посчитано и можно
r:=P/2;

----
ещё дополнение и немелкое. про скобки и пробелы.
AB:=sqrt(sqr(x2-x1)) + (sqr(y2-y1));
и
AB:=sqrt( sqr(x2-x1)+sqr(y2-y1) );
в тех языках, которые позволяют, используй игнорируемые пробелы для деления на блоки - будет меньше путаницы.
А в тех, которые не позволяют - пиши формулы сначала со всеми пробелами по блокам, а потом стирай пробелы

Ekaterina Vinokurova
Ekaterina Vinokurova

http://otvet.mail.ru/question/49801123

Отрицательный аргумент функции SQRT (извлечение квадратного корня)

Похожие вопросы
Delphi 7 ошибку выдает при компиляции (
ошибка в delphi 7 при компиляции
Ошибка компиляции Pawno
Pascal >> Ошибка 207: Ошибочная операция с плавающей запятой
Pascal >> ошибка 207 помогите пожалуйста!! ! в чем проблема
Ошибочная операция с плавающей запятой (Ошибка 207) в TP
что за ошибки при компиляции джава+
Плавающая точка или запятая?
Помогите! Все компилирует, но выбивает ошибку 207 с плавующей запятой
Ошибка при компиляции С++