A Maple egy fejlett matematikai problémamegoldó és programozói szoftver.
-
xDJCx #432 Pl. így:
haromszog:=proc(p1,p2,p3)
description "Háromszog, korulirt kore es oldalfelezo merolegesei. ";
use geometry in
# pontok objektumainak letrehozasa a p1, p2, p3 koordinata-listakbol
point(A,op(p1));point(B,op(p2));point(C,op(p3));
# egy egyenesen vannak-e a pontok
if (AreCollinear(A,B,C)=true)
then print("Nem alkotnak háromszöget a pontok!");
else
# haromszog objektum letrehozasa a csucspontokbol
triangle(T,[A,B,C]);
# korulirt kor letrehozasa
circumcircle(Elc, T, 'centername' = o);detail(Elc);
# a haromszog oldalegyenesei az oldalfelezo merolegesek eloallitasahoz
line(e1, [A, B]);line(e2, [A, C]);line(e3, [C, B]);
# oldalfelezo pontok
midpoint(C1, A, B);midpoint(C2, A, C);midpoint(C3, C, B);
# oldalfelezo merolegesek
PerpendicularLine(ep1, C1,e1);PerpendicularLine(ep2, C2, e2);PerpendicularLine(ep3, C3, e3);
draw([Elc(color=red),T(color=blue),ep1(color=brown),ep2(color=brown),ep3(color=brown)],printtext = true);
end if;
end use;
end proc;
A bemeneti csúcsontok koordinátáit kételemű listákban kell ennek az eljárásnak megadni:
haromszog([0,0],[20,-10],[0,4]);
haromszog([0,0],[0,-10],[0,4]);