Показать сообщение отдельно
Старый 06.12.2012, 00:58   #2 (permalink)
Léon
С# - learn or die
 
Аватар для Léon
 
Регистрация: 17.12.2011
Сообщений: 2,438
Записей в дневнике: 8
Сказал(а) спасибо: 21
Поблагодарили 49 раз(а) в 11 сообщениях
Репутация: 19701
По умолчанию

Цитата:
Сообщение от Ирина Посмотреть сообщение
Написать программу, которая по заданным трем точкам А(x1,y1), B(x2,y2), C(x3,y3) определяет - будут ли они расположены на одной прямой; если это не так, то вычислить угол ABC.
Код:
Program Irina;
Uses crt;
Label 1;
var x1,x2,x3,y1,y2,y3: Real;
ab,ac,bc,ug: Real;
Begin
Clrscr;
Write ('x1,y1,x2,y2,x3,y3=');
Read(x1,y1,x2,y2,x3,y3);
ab:=sqrt(sqr(x2-x1)+sqr(y2-y1));
ac:=sqrt(sqr(x1-x3)+sqr(y1-y3));
bc:=sqrt(sqr(x2-x3)+sqr(y2-y3));
if (ab+ac<=bc) or (ab+bc<=ac) or (ac+bc<=ab) then
Write('точки расположены на одной прямой') else
Begin
Write(' <ABC=');
ug:=(sqr(ab)+sqr(bc)-sqr(ac))/(2*ab*bc);
If ug<=0 then  begin ug:=90; goto 1; end;
ug:=arctan(sqrt(1+1/ug))*180/pi;
1: Write(ug:3:3,' град.');
end;
Readkey;
end.
Léon вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070