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]);