Другие языки программирования и технологии

Помогите пожалуйста решить задачу в паскале.

program N56864882;
var a:array[1..100,1..100] of integer;
n,m,i,j,k:integer;
begin
write('Введите кол-во строк: ');
readln(n);
write('Введите кол-во столбцов: ');
readln(m);
for i := 1 to n do
for j := 1 to m do
begin
write('Введите А [',i,',',j,']: ');
readln(a[ i,j]);
end;
writeln('Строки только с положительными элементами: ');
for i := 1 to n do
begin
k := i;
j := 1;
while (k > 0) and (j <= m) do
begin
if a[ i,j] <= 0 then
k := 0;
inc(j); {или j := j + 1;}
end;
if k > 0 then
writeln(k);
end;
readln
end.

Или вариант со случайно заданным массивом:
program N56864882_rnd;
var a:array[1..100,1..100] of integer;
n,m,i,j:integer;
k:boolean;
begin
write('Введите кол-во строк: ');
readln(n);
write('Введите кол-во столбцов: ');
readln(m);
randomize;
writeln('Массив: ');
for i := 1 to n do
begin
for j := 1 to m do
begin
a[ i,j] := random(21)-10;
write(a[ i,j]:4);
end;
writeln;
end;
writeln('Строки только с положительными элементами: ');
for i := 1 to n do
begin
k := true;
j := 1;
while k and (j <= m) do
begin
k := a[ i,j] > 0;
j := j + 1; {или inc(j);}
end;
if k then
writeln(i);
end;
readln
end.

Или вариант с циклом repeat .. until:
program N56864882_until;
var a:array[1..100,1..100] of integer;
n,m,i,j:integer;
k:boolean;
begin
write('Введите кол-во строк: ');
readln(n);
write('Введите кол-во столбцов: ');
readln(m);
for i := 1 to n do
for j := 1 to m do
begin
write('Введите А [',i,',',j,']: ');
readln(a[ i,j]);
end;
writeln('Строки только с положительными элементами: ');
for i := 1 to n do
begin
j := 1;
repeat
k := a[ i,j] > 0;
inc(j); {или j := j + 1;}
until not k or (j > m);
if k then
writeln(i);
end;
readln
end.

P.S. Ноль, как всем известно, не является положительным числом.
Vlаdik Www
Vlаdik Www
51 590
Лучший ответ