program lab2; var num1,num2 : longint; numm : longint; numn : longint; numi : longint; function posl(a,b : extended; n : longint) : extended; var k : longint; c : extended; begin if (n > 2) then begin for k := 3 to n do begin c := a + b; a := b; b := c; end; end else begin if (n = 1) then c := a; if (n = 2) then c := b; end; posl := c; end; begin write('a: '); readln(num1); write('b: '); readln(num2); write('n: '); readln(numn); write('m: '); readln(numm); writeln; if (numn = 0) then writeln('последовательность пуста'); if (posl(num1,num2,numn) > 0) then begin for numi := 1 to numn do begin if (posl(num1,num2,numi) <= numm) or ((posl(num1,num2,numn) > 0) and (numm < 0)) then begin writeln('a',numi,': ',trunc(posl(num1,num2,numi))); end; end; end else begin for numi := 1 to numn do begin if (posl(num1,num2,numi) >= numm) or ((posl(num1,num2,numn) < 0) and (numm > 0)) then begin writeln('a',numi,': ',trunc(posl(num1,num2,numi))); end; end; end; end.