Для данных расчетов в pascal воспользуемся формулой, а именно корень квадратный из выражения квадратов X и Y, где X и Y– введенные координаты.
И получаем следующий код:
var x1,y1,x2,y2,d1,d2:real; begin writeln('Введите A(X1,Y1) и B(X2,Y2)'); readln( x1,y1,x2,y2 ); //Вводим координаты точек d1:=sqrt(sqr(y1)+sqr(x1)); //Формула для расчетов удаленности точки A d2:=sqrt(sqr(y2)+sqr(x2)); //Формула для расчетов удаленности точки B ifd1<d2 thenwriteln('Точка A ближе') //Сравниваем результаты else if d1>d2 then writeln('Точка B ближе') else writeln('Одинаково'); end.
Результат:
Введите A(X1,Y1) и B(X2,Y2)
10 15 20 40
Точка A ближе
Sqrt – стандартный метод квадратного корня из числа в pascal.
Sqr – стандартный метод возведения числа в квадрат в pascal.
Видите, ничего сложного. Главное знать формулы и знать, где ими воспользоваться.
Преобразуем данный алгоритм в функцию, которую можно будет вызывать в любом участке кода:
function distanceAB(_x1:real;_y1:real;_x2:real;_y2:real):String; var d1,d2:real; begin d1:=sqrt(sqr(_y1)+sqr(_x1)); d2:=sqrt(sqr(_y2)+sqr(_x2)); if d1<d2 then distanceAB:='Точка A ближе' else if d1>d2 then distanceAB:='Точка B ближе' else distanceAB:='Одинаково'; end; var x1,y1,x2,y2:real; begin writeln('Введите A(X1,Y1) и B(X2,Y2)'); readln( x1,y1,x2,y2 ); writeln(distanceAB(x1,y1,x2,y2)); end.