Нарисовать отрезок и определить его длину. - PascalABC.NET

  1. Помогите пожалуйста. Нужна программа для решения и вывода графика на экран по формуле sqrt((x02-x01)*(x02-x01)+(y02-y01)*(y02-y01)).


textual

Код к задаче: «Нарисовать отрезок и определить его длину. - PascalABC.NET»

uses graphABC;
var x1,y1,x2,y2,s,m:real;
    cn,i:integer;
    st:string;
begin
repeat
writeln('Введите координаты двух точек от -10 до 10');
readln(x1,y1,x2,y2);
until(x1>=-10)and(x1<=10)and(y1>=-10)and(y1<=10)    
and  (x2>=-10)and(x2<=10)and(y2>=-10)and(y2<=10);
setwindowsize(500,550);
centerwindow;
clearwindow;
cn:=windowwidth div 2;
m:=(cn-20)/10;
line(0,cn,2*cn,cn);
line(cn,0,cn,2*cn);
textout(2*cn-10,cn-20,'X');
textout(cn+5,0,'Y');
textout(cn+5,cn+10,'0');
for i:=1 to 10 do
 begin
  line(cn+round(i*m),cn-3,cn+round(i*m),cn+3);
  textout(cn+round(i*m),cn+10,inttostr(i));
  line(cn-round(i*m),cn-3,cn-round(i*m),cn+3);
  textout(cn-round(i*m),cn+10,inttostr(-i));
  line(cn-3,cn-round(i*m),cn+3,cn-round(i*m));
  textout(cn-15,cn-round(i*m),inttostr(i));
  line(cn-3,cn+round(i*m),cn+3,cn+round(i*m));
  textout(cn-20,cn+round(i*m),inttostr(-i));;
 end;
setbrushcolor(clRed);
setpencolor(clRed);
circle(cn+round(x1*m),cn-round(y1*m),3);
circle(cn+round(x2*m),cn-round(y2*m),3);
setpenwidth(2);
line(cn+round(x1*m),cn-round(y1*m),cn+round(x2*m),cn-round(y2*m));
s:=sqrt(sqr(x1-x2)+sqr(y1-y2));
str(s:0:2,st); 
setbrushstyle(bsClear);
textout(cn-100,windowheight-20,'Длина отрезка='+st);
end.

СДЕЛАЙТЕ РЕПОСТ

9   голосов, оценка 4.111 из 5



Похожие ответы
  1. помогите пожалуйста. нужно сделать так чтобы график был без асимптот

  1. Добрый день. У меня вопрос:"Как нарисовать прямую линию, заданную курсором?" То есть, я пытаюсь сделать линии, типа "paint", к сожалению, у меня немного не получается присваивать значения x1,y1,x2,y2 так, чтобы линии рисовались правильно, можете подсказать как это реализовать?

  1. Программа должна выводить рисунок, лежащий в файле (.png; .gif и т.д.) в указанное место (по координатам). Покопался в справке, но как ни пробовал, все ругается и не работает. Помогите, пожалуйста, с кодом.

  1. Помогите сделать рот гусеницы как на скрине и чтобы круги скрещивались и в общем полупрозрачны были как на картинке...уже два дня не могу сделать, буду очень благодарна...очень срочно нужно(

  1. Нарисовать ночное небо, через которое периодически будет пролетать НЛО. Выход с программы по нажатию клавиши. Код у меня есть, но когда НЛО пролетает за ним остается след и я не знаю как это убрать. Есть функция Redraw, но я не понял как её использовать. Помогите убрать след от полёта) Вот код:

  1. Нужно нарисовать Дерево,Елка,Дерево.Все должно быть в одном окне.

  1. Здравствуйте,впервые на этом форуме и немного времени изучаю паскаль.Нужна помощь в решении задачи кого-нибудь более опытного. Задача: Напишите программу,которая в квадратном графическом окне рисует спираль.Размер окна и шаг спирали задаются константами.Начинается спираль в точке с координатами (2,2),а заканчивается в центре графического окна.При выполнении задачи используйте из операторов множественного повтора только оператор "Repeat...Until". Прошу если возможно прямо в эту тему прислать уже написанную программу. Рассчитываю на вас,заранее спасибоДобавлено через 17 минут *спираль должна состоять из линий.