Паскаль матрица

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Паскаль матрица

Re: Паскаль матрица

MOTOCoder » 11 апр 2008, 19:01

Можно примерно так:
[syntax='Delphi']
const
N=10;
var
A1,A2:array[1..N,1..N] of integer;
i,j,Next:integer;

procedure CopyCol(SrcIdx,DstIdx:integer);
var
I:integer;
begin
for i:=1 to n do
A2[DstIdx,i]:=A1[SrcIdx,i];
end;

function HasZero(idx:integer):boolean;
var
i:integer;
F:boolean;
begin
F:=False;
for i:=1 to n do
if A1[idx,i]=0 then
f:=True;
HasZero:=F;
end;

begin
for i:=1 to N do
for J:=1 to N do
A1[i,j]:=Random(100)-50;

for i:=1 to N do
begin
For j:=1 to N do
write(A1[J,I]:3,' ');
writeln;
end;

writeln;

for i:=1 to N do
if not HasZero(i) then
begin
inc(Next);
CopyCol(I,Next);
end;
for i:=1 to N do
begin
For j:=1 to Next do
write(A2[J,I]:3,' ');
writeln;
end;
readln;
end.
[/syntax]

Паскаль матрица

Света7 » 11 апр 2008, 16:14

Дана матрица А(n на m), элементы которой лежат в промежутке[-50;50]. Получить матрицу В, вычеркнув из матрицы А столбцы, где стоят элементы, равные 0. Спасибо!

Вернуться к началу