Помогите написать программу на Паскале Две двумерный массив .удалить столбец в котором кол-во положительных элементов равно кол-ву отрицательных.

Помогите написать программу на Паскале Две двумерный массив .удалить столбец в котором кол-во положительных элементов равно кол-ву отрицательных.
Гость
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016 type   Matrix=array[,] of integer; procedure MatPrint(a:Matrix); begin   var m:=Length(a,1)-1;   for var i:=0 to Length(a,0)-1 do begin     for var j:=0 to m do Write(a[i,j]:4);     Writeln     end end; function IsEqual(a:Matrix; col:integer):boolean; begin   var s:=sign(a[0,col]);   for var i:=1 to Length(a,0)-1 do s+=sign(a[i,col]);   if (s=0) then Result:=(a[0,col]<>0)   else Result:=false end; procedure DeleteCol(var a:Matrix; col:integer); begin   var n:=Length(a,0)-1;   var m:=Length(a,1)-1;   for var j:=col+1 to Length(a,1)-1 do     for var i:=0 to n do a[i,j-1]:=a[i,j];   SetLength(a,n+1,m) end; begin   var n:=ReadInteger('Строк:');   var m:=ReadInteger('Столбцов:');   var a:=MatrixRandom(n,m,-99,99);   Writeln('Исходная матрица');   MatPrint(a);   for var j:=Length(a,1)-1 downto 0 do     if IsEqual(a,j) then DeleteCol(a,j);   Writeln('Результирующая матрица');   MatPrint(a);   end. Тестовое решение Строк: 8 Столбцов: 10 Исходная матрица   -3 -82 -25 -22  65   1  79 -67 -64 -82   17  36  48 -32  51  11  43   9 -35   4  -10  -5  80  82 -24  66 -12 -58  50 -94   52  70  53  85 -32 -59  46  57 -84 -44   81  71 -55  37  46 -15 -61  25  22  -7  -49  98 -42 -18 -44 -97 -63  -7 -98  99  -86  37 -17 -69 -35  46  82  62  99  11   65  85  -7 -90  23  19 -50 -56 -64  91 Результирующая матрица  -82 -25 -22   1 -64   36  48 -32  11 -35   -5  80  82  66  50   70  53  85 -59 -84   71 -55  37 -15  22   98 -42 -18 -97 -98   37 -17 -69  46  99   85  -7 -90  19 -64
Не нашли ответ?
Ответить на вопрос
Похожие вопросы