// выводим исходный массив B writeln('Исходный массив B:'); for i := 1 to n do begin for j := 1 to m do write(B[i,j], ' '); writeln; end;
// удаляем строки без нулевых элементов k := 0; for i := 1 to n do begin hasZero := false; for j := 1 to m do begin if B[i,j] = 0 then begin hasZero := true; break; end; end;
if not hasZero then begin k := k + 1; for j := 1 to m do B[i,j] := 0; // обнуляем строку end;
end;
// выводим полученный массив B writeln('Массив B после удаления строк без нулевых элементов:'); for i := 1 to n do begin if B[i,1] <> 0 then // проверяем на зачения хотя бы в 1 столбце begin for j := 1 to m do write(B[i,j], ' '); writeln; end; end; end.
program DeleteRowsWithNoZeroElement;
const
n = 3; // количество строк
m = 4; // количество столбцов
var
B: array[1..n, 1..m] of integer;
i, j, k: integer;
hasZero: boolean;
begin
// заполняем массив B
B[1,1] := 1; B[1,2] := 2; B[1,3] := 3; B[1,4] := 4;
B[2,1] := 0; B[2,2] := 5; B[2,3] := 6; B[2,4] := 7;
B[3,1] := 8; B[3,2] := 9; B[3,3] := 10; B[3,4] := 11;
// выводим исходный массив B
writeln('Исходный массив B:');
for i := 1 to n do
begin
for j := 1 to m do
write(B[i,j], ' ');
writeln;
end;
// удаляем строки без нулевых элементов
if not hasZero thenk := 0;
for i := 1 to n do
begin
hasZero := false;
for j := 1 to m do
begin
if B[i,j] = 0 then
begin
hasZero := true;
break;
end;
end;
begin
k := k + 1;
for j := 1 to m do
B[i,j] := 0; // обнуляем строку
end;
end;
// выводим полученный массив B
writeln('Массив B после удаления строк без нулевых элементов:');
for i := 1 to n do
begin
if B[i,1] <> 0 then // проверяем на зачения хотя бы в 1 столбце
begin
for j := 1 to m do
write(B[i,j], ' ');
writeln;
end;
end;
end.