edt1.Text := FloatToStr(sum);
Вывод единственного значения вещественной переменной sum перед завершением работы процедуры. procedure TForm1.btn1Click(Sender: TObject);
var
mas: array[0..5] of Double;
coef: array[0..5] of Double; // Массив для коэффициентов полинома
i, j, n: Integer;
s: string;
begin
mas[0] := 0.91;
mas[1] := 0.1;
mas[2] := 0.123;
mas[3] := 0.21;
mas[4] := 0.26;
mas[5] := 0.3;
n := 5; // Степень полинома
// Инициализируем коэффициенты
for i := 0 to n do
coef[i] := 0;
// Используем метод умножения полиномов
// Начнем с полинома (x - mas[0])
coef[1] := 1; // x^1
coef[0] := -mas[0]; // x^0
// Умножаем на остальные множители (x - mas[i])
for i := 1 to n do
begin
// Умножение на (x - mas[i])
// Сдвигаем все члены на одну степень выше
for j := n downto 1 do
coef[j] := coef[j-1] - mas[i] * coef[j];
coef[0] := -mas[i] * coef[0];
end;
// Формируем строку полинома
s := '';
for i := n downto 0 do
begin
if coef[i] <> 0 then
begin
if (coef[i] > 0) and (s <> '') then
s := s + ' + ';
if coef[i] < 0 then
s := s + ' - ';
if abs(coef[i]) <> 1 or (i = 0) then
s := s + FloatToStr(abs(coef[i]));
if i > 0 then
begin
s := s + 'x';
if i > 1 then
s := s + '^' + IntToStr(i);
end;
end;
end;
edt1.Text := s;
end;
procedure TForm1.btn1Click(Sender: TObject);
var
mas: array[0..5] of Double;
m, sum, p, x: Double;
k, i: Integer;
begin
mas[0] := 0.91;
mas[1] := 0.1;
mas[2] := 0.123;
mas[3] := 0.21;
mas[4] := 0.26;
mas[5] := 0.3;
m := 1;
sum := 0;
// Предполагаем, что x - это значение, которое вы хотите использовать
x := 0; // Замените 0 на нужное вам значение
for k := 0 to 5 do
begin
p := m; // Сохраняем текущее значение m
for i := 0 to 5 do
begin
if k = i then
begin
// Если k = i, то p остается равным m, так как (x - mas[i]) будет равно 1
p := m * 1; // Можно просто оставить p как m
end
else
begin
p := p * (x - mas[i]); // Умножаем p на (x - mas[i])
end;
end;
sum := sum + p; // Добавляем p к сумме
end;
edt1.Text := FloatToStr(sum);
end;
end.