uses crt;
const
n = 45;
var
a: array [1 .. n] of integer;
i: byte;
p: longint;
begin
p := 1;
randomize;
clrscr;
writeln('исходный массив: ');
for i := 1 to n do
begin
a[i] := random(19) - 9;
write(a[i]:3);
end;
writeln;
for i := 1 to n do
if a[i] <> 0 then
p := p * a[i];
writeln('произведение всех ненулевых элементов = ', p);
end.