Ладно, значит будет с комплексными.
begin
var (a, b, c) := ReadReal3('Введите через пробел a, b, c:');
var d := b * b - 4 * a * c;
if d = 0 then Println('х =', -b / a)
else
if d > 0 then
d := Sqrt(d);
Println('x1 =', (-b - d) / 2 / a);
Println('x2 =', (-b + d) / 2 / a)
end
d := Sqrt(-d);
Println('x1 =', -b / 2 / a, '-', d / 2 / a, 'I');
Println('x2 =', -b / 2 / a, '+', d / 2 / a, 'I')
end.
Copyright © 2024 SCHOLAR.TIPS - All rights reserved.
Answers & Comments
Ладно, значит будет с комплексными.
PascalABC.NET 3.4.2, сборка 1843 от 24.10.2018
Внимание! Если программа не работает, обновите версию!
begin
var (a, b, c) := ReadReal3('Введите через пробел a, b, c:');
var d := b * b - 4 * a * c;
if d = 0 then Println('х =', -b / a)
else
if d > 0 then
begin
d := Sqrt(d);
Println('x1 =', (-b - d) / 2 / a);
Println('x2 =', (-b + d) / 2 / a)
end
else
begin
d := Sqrt(-d);
Println('x1 =', -b / 2 / a, '-', d / 2 / a, 'I');
Println('x2 =', -b / 2 / a, '+', d / 2 / a, 'I')
end
end.
Примеры
Введите через пробел a, b, c: 1 2 1
х = -2
Введите через пробел a, b, c: 3 4.5 -8.15
x1 = -2.56084694733339
x2 = 1.06084694733339
Введите через пробел a, b, c: 3 4 5
x1 = -0.666666666666667 - 1.10554159678513 I
x2 = -0.666666666666667 + 1.10554159678513 I