Pravoúhlý trojúhelník

2. 1. 2014 00:00

Jak poznáme pravoúhlý trojúhelník? Pomocí Pythagorovy věty, která zní: Obsah čtverce nad přeponou je roven součtů čtverců nad oběma odvěsnami -> c2 = a2 + b2 . Tento vztah si upravíme do pro nás lepší podoby -> c = odmocnina(a2 + b2). Toto ale ještě není vše. Co třeba dostaneme hodnoty (strany trojúhelníku): 10, 5, 1. Toto není trojúhelník, a proto musíme ověřit, zda se jedná o trojúhelník. Ověříme to tak, že porovnáme součet dvou stran proti straně třetí. Kód pro ověření pravosti trojúhelníku:

//A, B, C: integer
      JE := true;              //JE se nastavi na zacatku na true
      if A+B <= C
         then
            JE := false;       //je porusena prvni podminka
      if B+C <= A
         then
            JE := false;       //je porusena druha podminka
      if A+C <= B
         then
            JE := false;       //je porusena treti podminka

Když už tedy víme, že pracujeme opravdu s trojúhelníkem, přistoupíme k jeho ověření pravoúhlosti. V kódu už nic ošetřovat nemusíme, protože to jsme již udělali. Nyní tedy kód pro celý program:

Program pravouhltro;

Uses CRT;

Var A,B,C, D:integer;
       JE:boolean;

begin
   write('Zadejte 1. stranu: ');
   readln(A);
   write('Zadejte 2. stranu: ');
   readln(B);
   write('Zadejte 3. stranu: ');
   readln(C);

   JE := true;              
      if A+B <= C
         then
            JE := false;       
      if B+C <= A
         then
            JE := false;       
      if A+C <= B
         then
            JE := false;       

   if JE = true
      then
         begin
         D:= C*C - (B*B + A*A);
         if D = 0
            then
               writeln('Trojuhelnik je pravouhly. Kliknutim skoncite.');
            else
               writeln('Trojuhelnik neni pravouhly. Kliknutim skoncite.');
         end;
      else
         writeln('Nelze sestavit trojuhelnik ze zadanych hodnot. Kliknutim skoncite.')

readln;
end.

Tento příklad je jednoduchý, ale při matematických programech, kdy se kontrolují hodnoty, jsou tyto malé programy doslova nepostradatelné. Když ještě přidáme funkce a procedury, nebudeme muset tyto části neustále opakovat a tím docílíme lepší funkčnosti a správy programu.

Doplňující úkol: Vytvořte část programu, která dopočítá 3. stranu.