MODULE NizDin; FROM IO IMPORT WrStr, RdInt, WrInt; CONST MaxN = 1000; VAR a, b: ARRAY [0 .. MaxN] OF INTEGER; (* b[i] je suma elemenata u resenju za *) (* deo niza 'a' do 'i'-tog elementa *) n: INTEGER; PROCEDURE Unos; VAR i: INTEGER; BEGIN WrStr('Unesite N: '); n:= RdInt(); FOR i:= 1 TO n DO WrStr('A['); WrInt(i, 1); WrStr('] = '); a[i]:= RdInt(); END; END Unos; PROCEDURE Resi; VAR i: INTEGER; BEGIN b[0]:= 0; IF a[1] > 0 THEN b[1]:= a[1]; ELSE b[1]:= 0; END; FOR i:= 2 TO n DO IF b[i - 2] + a[i] > b[i - 1] THEN b[i]:= b[i - 2] + a[i]; ELSE b[i]:= b[i - 1]; END END; END Resi; PROCEDURE Ispis(n: INTEGER); BEGIN IF n > 0 THEN IF b[n] = b[n - 1] THEN Ispis(n - 1); ELSE Ispis(n - 2); WrInt(a[n], 8); END; END; END Ispis; BEGIN Unos; Resi; WrStr('Podniz: '); Ispis(n); END NizDin.