//видимо, это одна , так как "изменения" во второй не указаны //pascal abc.net v3.1 сборка 1172 const n=20; var ar: array[1..n] of integer; i: integer; begin randomize; writeln('first array: '); for i: =1 to n do begin ar[i]: =random(10)-3; write(ar[i]: 4); if ar[i]> 0 then ar[i]: =ar[i]*2 else ar[i]: =0; end; writeln; writeln('final array: '); for i: =1 to n do write(ar[i]: 4); end. пример работы программы: first array: 2 -3 5 6 -3 -3 1 -2 -3 1 3 -3 4 -3 1 -1 6 6 2 3 final array: 4 0 10 12 0 0 2 0 0 2 6 0 8 0 2 0 12 12 4 6
plio67380
21.02.2020
Program task; const n = 3; var a: array [1..n, 1..n] of integer; d, p, n first, nlast, i, j, k: integer; begin nfirst : = 1; nlast : = n; p : = (n div 2 + 1); for k : = 1 to p do begin if k = p then begin d : = p + 1; if d > 3 then d : = 1; a[nfirst, nlast] : = d; break; end; for j : = nfirst to nlast do begin if j < = p then begin d : = d + 1; end else begin d : = d - 1; end; a[nfirst, j] : = d; a[nlast, j] : = d; end; d : = 0; for i : = nfirst to nlast do begin if i < = p then begin d : = d + 1; end else begin d : = d - 1; end; a[i, nfirst] : = d; a[i, nlast] : = d; end; d : = 0; nfirst : = n first + 1; nlast : = nlast - 1; end; for i : = 1 to n do begin for j : = 1 to n do write(a[i, j], ' '); writeln; end; readln; end.
ответ будут б)=(а div1000) mod 10