Методические указания Расчет характеристик треугольника на плоскости в среде MAPLE

Автор публикации:

Дата публикации:

Краткое описание: ...


9. Расчет характеристик треугольника на плоскости

Треугольник ABC задан координатами его вершин на плоскости. Найти:

а) длины всех его сторон;

б) уравнения всех его сторон;

в) уравнения его высот AH1, BH2, CH3;

г) координаты точки пересечения его высот K;

д) уравнение медианы AM;

е) уравнение биссектрисы AN;

ж) площадь треугольника ABC;

з) длину высоты CH3.

Сделать чертеж.

Исходные данные:

> restart:

> with(linalg):

> A:=[-3,5]; B:=[-8,-1]; C:=[6,5];

[pic]

[pic]

[pic]

Решение примера производим по правилам и формулам, известным из курса аналитической геометрии.

Находим векторы.

> AB:=B-A; AC:=C-A; BC:=C-B;

[pic]

[pic]

[pic]

Находим длины векторов.

> ab:=sqrt(AB[1]^2+AB[2]^2); evalf(ab,5);

[pic]

[pic]

> ac:=sqrt(AC[1]^2+AC[2]^2); evalf(ac,5);

[pic]

[pic]

> bc:=sqrt(BC[1]^2+BC[2]^2); evalf(bc,5);

[pic]

[pic]

Составляем уравнения сторон. Насколько это возможно, в каждом уравнении алгебраически выражаем y через x, а если это невозможно – то x через y; здесь требуется смотреть по контексту (при затруднениях см. ниже уравнение одной из высот).

> EQAB:=matrix([[x,y,1],[A[1],A[2],1],[B[1],B[2],1]]);

[pic]

> eqab:=det(EQAB)=0;

[pic]

> eqab1:=y=solve(eqab,y);

[pic]

> EQAC:=matrix([[x,y,1],[A[1],A[2],1],[C[1],C[2],1]]);

[pic]

> eqac:=det(EQAC)=0;

[pic]

> eqac1:=y=solve(eqac,y);

[pic]

> EQBC:=matrix([[x,y,1],[B[1],B[2],1],[C[1],C[2],1]]);

[pic]

> eqbc:=det(EQBC)=0;

[pic]

> eqbc1:=y=solve(eqbc,y);

[pic]

Составляем уравнения высот. Насколько это возможно, в каждом уравнении алгебраически выражаем y через x, а если это невозможно – то x через y; здесь требуется смотреть по контексту (например, в данном случае по уравнению высоты из точки B нем находим явное значение x).

> bcx:=coeff(lhs(eqbc),x); bcy:=coeff(lhs(eqbc),y);

[pic]

[pic]

> eqah:=bcx*(y-A[2])-bcy*(x-A[1])=0;

[pic]

> eqah1:=y=solve(eqah,y);

[pic]

> acx:=coeff(lhs(eqac),x); acy:=coeff(lhs(eqac),y);

[pic]

[pic]

> eqbh:=acx*(y-B[2])-acy*(x-B[1])=0;

[pic]

> eqbh2:=x=solve(eqbh,x);

[pic]

> abx:=coeff(lhs(eqab),x); aby:=coeff(lhs(eqab),y);

[pic]

[pic]

> eqch:=abx*(y-C[2])-aby*(x-C[1])=0;

[pic]

> eqch3:=y=solve(eqch,y);

[pic]

Находим координаты точки пересечения высот. Для этого решаем систему из каких-нибудь двух уравнений высот.

> sys:={eqah,eqbh};

[pic]

> tpv:=solve(sys,{x,y});

[pic]

К сожалению, при каждом пересчете документа порядок следования переменных в решении системы произвольный, поэтому и нужна приведенная ниже конструкция.

> tpv1:=op(1,tpv); tpv2:=op(2,tpv);

[pic]

[pic]

> if lhs(tpv1)=y then K[1]:=rhs(tpv2); K[2]:=rhs(tpv1); else K[1]:=rhs(tpv1); K[2]:=rhs(tpv2); fi;

[pic]

[pic]

Делаем проверку: подставляем найденные координаты точки пересечения высот в уравнение третьей высоты.

> subs(x=K[1],y=K[2],eqch); evalb(%);

[pic]

[pic]

Находим координаты точки M и уравнение медианы AM.

> M[1]:=(B[1]+C[1])/2; M[2]:=(B[2]+C[2])/2;

[pic]

[pic]

> EQAM:=matrix([[x,y,1],[A[1],A[2],1],[M[1],M[2],1]]);

[pic]

> eqam:=det(EQAM)=0;

[pic]

> eqam1:=y=solve(eqam,y);

[pic]

Находим координаты точки N и уравнение биссектрисы AN.

> N[1]:=(ab*C[1]+ac*B[1])/(ab+ac); evalf(N[1],5);

[pic]

[pic]

> N[2]:=(ab*C[2]+ac*B[2])/(ab+ac); evalf(N[2],5);

[pic]

[pic]

> EQAN:=matrix([[x,y,1],[A[1],A[2],1],[N[1],N[2],1]]);

[pic]

> eqan:=det(EQAN)=0;

[pic]

Уравнение биссектрисы представляем в виде уравнения прямой с угловым коэффициентом в виде двух слагаемых – первое содержит x.

> reqan1:=collect(solve(eqan,y),x): y=reqan1;

[pic]

> kan1:=coeff(reqan1,x); evalf(kan1,5);

[pic]

[pic]

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

> ban1:=op(2,reqan1); evalf(ban1,5);

[pic]

[pic]

Находим площади параллелограмма и треугольника, построенных на векторах AC и BC, затем длину высоты, проведенной из точки C.

> Spar:=abs(BC[1]*AC[2]-AC[1]*BC[2]); Str:=Spar/2;

[pic]

[pic]

> ch1:=Spar/ab; evalf(ch1,5);

[pic]

[pic]

Строим чертеж треугольника, показанный ниже на рис. 9.1, для чего предварительно определяем массив координат точек A, B, C и A (чтобы линия имела вид замкнутого многоугольника).

> pts:=[A,B,C,A];

[pic]

> plot(pts,axes=normal,style=line,color=black);

[pic]

Рис. 9.1

Результаты расчётов сводятся в таблицу командой Insert Spreadsheet. Такая таблица заполняется, как показано на рис. 9.2.

[pic]

Рис. 9.2

Как показано на рис. 9.2, в ряд ячеек записывается поясняющий текст в кавычках – при выводе он так в кавычках и останется. Для отображения результатов расчётов в ряд ячеек вставляются формулы. Завершает ввод формулы клавиша Enter.

B2: B

C2: C

A4: ab

B4: ac

C4: bc

A6: eqab1

B6: eqac1

C6: eqbc1

A8: eqah1

B8: eqbh2

C8: eqch3

B9: convert(K,list)



B10: convert(M,list)



B11: eqam1



B12: convert(N,list)



B13: y=reqan1



B14: Str



B15: ch1