Написать программу, производящую замену всех элементов двумерного числового массива, имеющих заданное значение, на ноль. В программе использовать динамическую память. Алгоритм пояснить.
var a: array [,] of integer;
st,sl,b: integer;
begin
write ('Введите количество строк массива - ');
readln (st);
write ('Введите количество столбцов массива - ');
readln (sl);
SetLength(a,st,sl);
for var i:=0 to st-1 do
for var j:=0 to sl-1 do
a[i,j] := Random(10)+1;
writeln ('Исходный массив');
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
write ('Введите число от 1 до 10 - ');
readln (b);
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
if a[i,j]=b then begin
a[i,j]:=0;
end;
end;
end;
writeln ('Преобразованный массив');
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
end.
Написать программу, реализующую сортировку первой строки двумерного числового массива в порядке убывания. В программе использовать динамическую память. Алгоритм пояснить.
var a: array [,] of integer;
st,sl,b: integer;
begin
write ('Введите количество строк массива - ');
readln (st);
write ('Введите количество столбцов массива - ');
readln (sl);
SetLength(a,st,sl);
for var i:=0 to st-1 do
for var j:=0 to sl-1 do
a[i,j] := Random(10)+1;
writeln ('Исходный массив');
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
for var i:=0 to sl-1 do begin
for var j:=0 to sl-1 do begin
if a[0,i]>a[0,j] then begin
b:= a[0,i];
a[0,i]:= a[0,j];
a[0,j]:= b;
end;
end;
end;
writeln ('Преобразованный массив');
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
end.
Написать программу, реализующую сортировку первого столбца двумерного числового массива в порядке возрастания. В программе использовать динамическую память. Алгоритм пояснить.
var a: array [,] of integer;
st,sl,b: integer;
begin
write ('Введите количество строк массива - ');
readln (st);
write ('Введите количество столбцов массива - ');
readln (sl);
SetLength(a,st,sl);
for var i:=0 to st-1 do
for var j:=0 to sl-1 do
a[i,j] := Random(10)+1;
writeln ('Исходный массив');
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
for var i:=0 to st-1 do begin
for var j:=0 to st-1 do begin
if a[i,0]<a[j,0] then begin
b:= a[i,0];
a[i,0]:= a[j,0];
a[j,0]:= b;
end;
end;
end;
writeln ('Преобразованный массив');
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
end.
Написать программу, реализующую транспонирование матрицы, хранящейся в динамической памяти. В программе использовать динамическую память. Алгоритм пояснить.
vara: array[,] ofinteger;
b,st,sl: integer;
Begin
write ('Введите количество строк массива - ');
readln (st);
write ('Введите количество столбцов массива - ');
readln (sl);
SetLength(a,st,sl);
for vari:=0 tost-1 do
for varj:=0 tosl-1 do
a[i,j] := Random(10);
writeln ('Исходный массив');
for vari:=0 tost-1 do begin
for varj:=0 tosl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
for vari:=0 tost-1 do begin
for varj:=0 tost-1 do begin
b:=a[i,j];
a[i,j]:=a[j,i];
a[j,i]:=b;
end;
end;
writeln ('Преобразованный массив');
for vari:=0 tost-1 do begin
for varj:=0 tosl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
end.
Написать программу, производящую замену всех элементов двумерного числового массива, имеющих заданное значение, на единицу. В программе использовать динамическую память. Алгоритм пояснить.
var a: array [,] of integer;
st,sl,b: integer;
begin
write ('Введите количество строк массива - ');
readln (st);
write ('Введите количество столбцов массива - ');
readln (sl);
SetLength(a,st,sl);
for var i:=0 to st-1 do
for var j:=0 to sl-1 do
a[i,j] := Random(10)+1;
writeln ('Исходный массив');
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
write ('Введите число от 1 до 10 - ');
readln (b);
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
if a[i,j]=b then begin
a[i,j]:=1;
end;
end;
end;
writeln ('Преобразованный массив');
for var i:=0 to st-1 do begin
for var j:=0 to sl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
end.
Написать программу, формирующую единичную матрицу, заданного размера, в динамической памяти. В программе использовать динамическую память. Алгоритм пояснить.
vara: array[,] ofinteger;
st,sl: integer;
Begin
write ('Введите количество строк массива - ');
readln (st);
write ('Введите количество столбцов массива - ');
readln (sl);
SetLength(a,st,sl);
for vari:=0 tost-1 do
for varj:=0 tosl-1 do
a[i,j] := Random(10)+1;
writeln ('Исходный массив');
for vari:=0 tost-1 do begin
for varj:=0 tosl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
for vari:=0 tost-1 do begin
for varj:=0 tosl-1 do begin
ifi=j thena[i,j]:=1;
end;
end;
writeln ('Преобразованный массив');
for vari:=0 tost-1 do begin
for varj:=0 tosl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
end.
Написать программу, реализующую перестановку первой строки на первый столбец в квадратной матрице. В программе использовать динамическую память. Алгоритм пояснить
vara: array[,] ofinteger;
st,sl,buf,k: integer;
Begin
write ('Введите количество строк массива - ');
readln (st);
write ('Введите количество столбцов массива - ');
readln (sl);
SetLength(a,st,sl);
for vari:=0 tost-1 do
for varj:=0 tosl-1 do
a[i,j] := Random(10)+1;
writeln ('Исходный массив');
for vari:=0 tost-1 do begin
for varj:=0 tosl-1 do begin
write(a[i,j]:5);
end;
writeln;
end;
for varj:=0 tosl-1 do begin
buf:=a[1,j];
a[1,j]:=a[k,j];
a[k,j]:=buf;;
end;
writeln ('Преобразованный массив');
for vari:=0 tost-1 do begin
for varj:=0 tosl-1 do begin
a[i,j]:=a[i,j];
write(a[i,j]:5);
end;
writeln;
end;
end.