В заданной матрице размером N*N с помощью функции обеспечить поиск строки или столбца с минимальным числом нулевых элементов

Вывести исходную матрицу и результат её обработки с указанием номеров искомых столбца или строки

code: #pascal
program PascalGuru;
 
var A:array [1..50,1..50] of integer;
    i,j,n:integer;
 
{-----------------------------------------------------------------------------}
function n_row:integer; {nomer -stroki- s MAX chislom "0" el-ov}
var i,j,rez:integer;
    ccount,min:integer;
begin
ccount:=0;
for j:=1 to n do if A[1,j]=0 then inc(ccount);
rez:=1; min:=ccount;
 
for i:=2 to n do
    begin
     ccount:=0;
     for j:=1 to n do
     if A[i,j]=0 then inc(ccount);
     if ccountthen begin rez:=i;  min:=ccount; end;
    end;
 
n_row:=rez;
end;
{-----------------------------------------------------------------------------}
function n_column:integer; {nomer -stolbca- s MAX chislom "0" el-ov}
var i,j,rez:integer;
    ccount,min:integer;
begin
ccount:=0;
for i:=1 to n do if A[i,1]=0 then inc(ccount);
rez:=1; min:=ccount;
 
for j:=2 to n do
    begin
     ccount:=0;
     for i:=1 to n do
     if A[i,j]=0 then inc(ccount);
     if ccountthen begin rez:=j;  min:=ccount; end;
    end;
 
n_column:=rez;
end;
{-----------------------------------------------------------------------------}
 
begin
write('N= '); readln(n);
 
for i:=1 to n do
for j:=1 to n do begin write('A[',i,',',j,']='); readln(A[i,j]); end;
 
for i:=1 to n do begin writeln;
for j:=1 to n do write (A[i,j]:8);  end;
{******************************************}
writeln;writeln;
if n_column()() then writeln('V ',n_column(),' stolbce MIN kol-vo "0"')
                      else writeln('V ',n_row(),' stroke MIN kol-vo "0"');
 
readln;
end.      
Поделиться:

Похожие статьи: