Mam takie zadanie:
Zad. 1. (Zadanie 1 z listy 1 dr Heleny Krupickiej) Dany jest wielomian W(x) =
a0 · xn + a1 · xn−1 + . . . + an. Napisz program, który:
- wczyta: stopien wielomianu W i jego całkowite współczynniki (od a0 do an),
- wypisze ten wielomian,
- obliczy jego pochodna,
- wypisze te pochodna,
- za pomoca schematu Hornera obliczy wartosc pochodnej w punkcie 2 i wypisze
ja.
Uwaga: wielomian nalezy wypisac czytelnie, bez składników o zerowych współczynnikach
(za wyjatkiem wielomianu zerowego) i bez zbednych operatorów +.
Przykład wyników dla danych n = 5 i współczynników 2 0 0 3 0 1:
W(x) = 2 · x5 + 3 · x2 + 1 · x0.
W0(x) = 10 · x4 + 6 · x1
W0(2) = 172
const max = 30;
var st: integer;
wsp: array[0..max] of integer;
{tylko plus na poczatku}
procedure WypiszWielomian;
var k: integer;
begin
write('W(x)=');
for k:=0 to st do
begin
if (wsp[k] < 0) then
begin
{ if (wsp[k] = 0) then
begin
write;
end
else }
write(wsp[k],'x^',st-k);
end
else
if (wsp[k] = 0) then
begin
write;
end
else
write('+',wsp[k],'x^',st-k);
end;
writeln;
end;
{dziala nie do konca, ' }
procedure ObliczPochodna;
var k: integer;
i, wynik: integer;
begin
write('Pochodna W(x)=');
i:=st;
for k:=0 to st do
begin
i:=i-1;
if (i = -1) then
begin
write;
end;
if ( st = 0) then
begin
write(wsp[k]);
end
else
write(wsp[k]*(st-k),'x^',i,'+');
end;
end;
Podaj stopien wielomianu: 3
Podaj wspolczynniki (od najwiekszej potegi): 5 2 1 0
W(x)=+5x^3+2x^2+1x^1
Pochodna W(x)=15x^2+4x^1+1x^0+0x^-1+
d:\Studia\Pascal>D:\Studia\Pascal\ZAD1_L~1.EXE
Podaj stopien wielomianu: 3
Podaj wspolczynniki (od najwiekszej potegi): -2 0 -2 0
W(x)=-2x^3-2x^1
Pochodna W(x)=-6x^2+0x^1+-2x^0+0x^-1+
Co zrobić aby w pochodnej było W(x)=15x^2+4x^1+1 zamiast W(x)=15x^2+4x^1+1x^0+0x^-1+
I jeszcze jak napisać W'(x)=? Jak tak wpiszę otrzymuję syntax error.