KvadRov Príklad na podmienený príkaz IF - THEN - ELSE
Výpočet reálnych koreňov kvadratickej rovnice.
 
Text prikladu
Back
program KvadratickaRovnica;
var
  a, b, c,                             { koeficienty kvadr. rovnice }
  d, x1, x2 : real;                    { diskriminant, reálne korene }
  zb, zc    : char;                    { znamienko b, c }
begin
{---- Vstup dát ---- }
  WriteLn('    Výpočet koreňov kvadratickej rovnice.');
  Write('Vlozte kvadraticky clen a: ');
  ReadLn(a);                           { kvadratický člen do a }
  Write('Vlozte linearny clen    b: ');
  ReadLn(b);                           { lineárny člen do b }
  if b < 0 then zb:= '-' else zb:= '+';  { znamienko pre výpis b }
  Write('Vlozte absolutny clen   c: ');
  ReadLn(c);                           { absolútny člen do c }
  if c < 0 then zc:= '-' else zc:= '+';  { znamienko pre výpis c }

{---- Výpočet koreňov ---- }
  d:= b*b-4*a*c;                       { výpočet diskriminantu }

                                 { Výpis rovnice so správnymi operátormi }
  WriteLn('Kvadraticka rovnica:    ',          a:0:2,  ' x^2 ',
                                  zb, ' ', Abs(b):0:2, ' x ',
                                  zc, ' ', Abs(c):0:2);
  Writeln('===================');

  if d < 0 then                        { ** záporný diskriminant }
    begin                              {     komplexné korene }
      WriteLn(' --> nema realne riesenie')
    end
  else
    if d = 0 then                      { ** dvojnásobný reálny koreň }
      begin
        x1:= -b/(2*a);
        WriteLn(' --> ma jeden dvojnasobny koren: ',x1:0:2)
      end
    else                               { ** dva reálne korene }
      begin
        x1:= (-b + Sqrt(d))/(2*a);
        x2:= (-b - Sqrt(d))/(2*a);
        WriteLn(' --> ma dva realne korene: x1= ',x1:10:2);
        WriteLn('                           x2= ',x2:10:2);
      end;
  Readln                               { čaká na ENTER (pred ukončením) }
                                       {          a návratom do editoru }
end.                
 
D I S P L A Y      3-krát štartovaný program:  
 
Vlozte kvadraticky clen a: 2
Vlozte linearny clen    b: 4
Vlozte absolutny clen   c: 2
Kvadraticka rovnica:    2.00 x^2 + 4.00 x + 2.00
===================
 --> ma jeden dvojnasobny koren: -1.00

    Vypocet korenov kvadratickej rovnice.
Vlozte kvadraticky clen a: -5
Vlozte linearny clen    b: 4
Vlozte absolutny clen   c: -8
Kvadraticka rovnica:    -5.00 x^2 + 4.00 x - 8.00
===================
 --> nema realne riesenie

    Vypocet korenov kvadratickej rovnice.
Vlozte kvadraticky clen a: 6
Vlozte linearny clen    b: 12
Vlozte absolutny clen   c: -24
Kvadraticka rovnica:    6.00 x^2 + 12.00 x - 24.00
===================
 --> ma dva realne korene: x1=      1.24
                           x2=     -3.24