Предмет: Информатика,
автор: Никогр
прошу вас помогите пожалуйста срочно
Пользователь вводит три вещественных числа: a,b,c. Составить функцию для решения уравнения (a–x)/(b–x)=сx, которая получает введенные числа в качестве
параметров. Найденные корни уравнения функция возвращает в качестве двух других параметров.
Результат, который возвращает сама функция, должен позволять отслеживать следующие случаи (зависящие от значений введенных чисел): уравнение имеет только
один корень, нет вещественных корней, корни одинаковы, деление на нуль.
Ответы
Автор ответа:
0
function SolveX(a,b,c:real; var x1,x2:real):integer;
{
Возвращает:
-1 - нет вещественных корней
0 - один корень х1
1 - два корня х1,х2
}
var D:real;
begin
D:=b*b-4*a*c;
if D<0 then SolveX:=-1
else
if D=0 then begin
x1:=(1+b*c0)/(2*c);
if x1=b then SolveX:=-1 else SolveX:=0
end
else begin
D:=sqrt(D);
x1:=(1+b*c-D)/(2*c);
x2:=(1+b*c+D)/(2*c);
if x1=b then begin SolveX:=0; x1:=x2 end
else
if x2=b then SolveX:=0
else SolceX:=1
end
end;
{
Возвращает:
-1 - нет вещественных корней
0 - один корень х1
1 - два корня х1,х2
}
var D:real;
begin
D:=b*b-4*a*c;
if D<0 then SolveX:=-1
else
if D=0 then begin
x1:=(1+b*c0)/(2*c);
if x1=b then SolveX:=-1 else SolveX:=0
end
else begin
D:=sqrt(D);
x1:=(1+b*c-D)/(2*c);
x2:=(1+b*c+D)/(2*c);
if x1=b then begin SolveX:=0; x1:=x2 end
else
if x2=b then SolveX:=0
else SolceX:=1
end
end;
Похожие вопросы
Предмет: История,
автор: sadrotlol
Предмет: Українська мова,
автор: davidmarusiyak
Предмет: История,
автор: irsha25071985
Предмет: Математика,
автор: lizaonoprienko
Предмет: Математика,
автор: Taras06