Составить подпрограмму, меняющую в двумерном массиве два указанных столбца или строки.
заранее спасибо
сам ни чего не понимаю в программировании на паскале
Модератор: Модераторы
const
nr = 5; nc = 5; mv = 100;
var
i, j, t, c1, c2: integer;
a: array [1..nr, 1..nc] of integer;
begin
randomize;
for i := 1 to nr do begin
for j := 1 to nc do begin
a[i, j] := random(mv); write(a[i, j]:8);
end;
writeln;
end;
repeat
write('Укажите, что менять (1 - строки, 2 - столбцы) и их номера: ');
readln(t, c1, c2);
if (t < 1) or (t > 2) or (c1 < 1) or (c2 < 1)
or ((t = 1) and ((c1 > nr) or (c2 > nr)))
or ((t = 2) and ((c1 > nc) or (c2 > nc)))
then writeln('*** Ошибочный ввод, повторите')
else break;
until false;
if t = 1 then
for j := 1 to nc do begin
t := a[c1, j]; a[c1, j] := a[c2, j]; a[c2, j] := t;
end
else
for i := 1 to nr do begin
t := a[i, c1]; a[i, c1] := a[i, c2]; a[i, c2] := t;
end;
for i := 1 to nr do begin
for j := 1 to nc do write(a[i, j]:8);
writeln;
end;
end.
NTFS писал(а):Вы же в курсе, что денег уже не получите?
Вернуться в Помощь за вознаграждение
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7