Начало можно взять из найденного вами листинга, удалив из него лишние многочлены
Цитата:
Сообщение от 11Angelav
Многочлен P(x) = a0 + a1 x + a2 x2 + ... + an xn с целыми коэффициентами представьте в динамической памяти. При этом, если ai=0, то соответствующий член не включать в память. Создайте подходящий тип данных и определите следующие процедуры и функции для работы с такими многочленами: процедуру PRINT(P, S), которая выводит P как многочлен от переменной, равной коду символьной переменной S.
|
Код:
program din;
type intmas=array [1..1000] of integer; {определяем тип динамического массива}
var P: ^intmas; {определяем динамическую переменную для хранения массива}
i,k:integer;
s:char;
{сюда вставьте процедуру PRINT}
begin
new(P); {создаем динамический массив в памяти}
writeln('Input symbol'); {запрашиваем ввод символа для указания его в качестве аргумента многочлена}
readln(s);
writeln('vvedite kolichestvo slagaemyh mnogochlena P[',s,']'); {запрашиваем количество членов многочлена}
readln(n);
{инициализируем динамический массив в памяти, присваивая ему начальные значения, без этого вполне можно обойтись, но дальнейшая работа с массивом может быть затруднена из-за особенностей компилятора да и от мусора в выделенной памяти избавит}
for i:=1 to n do begin P^[i]:=0; end;
{заполняем массив коэффициентами}
for i:=1 to n do
begin
write('vvedi kofficient pri ',s,'^',i-1,'=');
readln(p^[i]); {считываем с клавиатуры очередной коэффициент и помещаем его в массив в памяти}
end;
PRINT(S);
readln
end.
Теперь вам остается реализовать только процедуру вывода многочлена, при этом также можно воспользоваться найденным вами листингом в части вывода многочлена R(X), внеся в него незначительные изменения