Kvadratická rovnica pre výpočet hodnôt reálnych aj imaginárnych koreňov.

Delphi & Pascal (česká wiki)
Přejít na: navigace, hledání
Kategorija: Zadaňa zos Pascalu

Program: Kvadrat.pas
Subor exe: Kvadrat.exe

Kvadratická rovnica a výpočet hodnôt. Okrem reálnych koreňov x1,x2 vie vypočítať aj korene imaginárne.
{ KVADRAT.PAS               Copyright (c) TrSek alias Zdeno Sekerak }
{ Vypocet kvadratickej rovnice                                      }
{ Vstup : koeficienty a,b,c kvadratickej rovnice                    }
{ Vystup: korene x1,x2 vypoctu, alebo imaginarne korene             }
{                                                                   }
{ Datum:10.04.2000                             http://www.trsek.com }
 
program kvadrat (input, output);
var a,b,c,d,x1,x2 : real;
begin
   writeln ('Zadaj koeficienty kvadratickej rovnice a,b,c: ');
   read (a,b,c);
   if (a = 0) then
      if (b = 0) then
         writeln ('Nekorektne zadanie koeficientov !')
      else
         writeln ('Koren linearnej rovnice je x1=',(-c)/b:6:3)
   else begin
      d := b*b-4*a*c;
      if (d > 0) then begin
         d := sqrt(d);
         x1 := (-b+d)/(2*a);
         x2 := (-b-d)/(2*a);
         writeln ('Realne korene su x1=',x1:6:3,' x2=',x2:6:3);
      end
      else if (d = 0) then begin
         x1 := (-b)/(2*a);
         writeln ('Dvojnasobny koren je x1=x2=',x1:6:3);
      end
      else begin
         d := sqrt(-d);
         x1 := (-b)/(2*a);
         x2 := d/(2*a);
         writeln ('Komplexne korene su Re=',x1:6:3,' Im=',x2:6:3);
      end
   end;
   ReadLn;
end.