10.04.2012, 15:55 | #1 (permalink) |
Member
Регистрация: 29.10.2011
Сообщений: 42
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: -42
|
Pascal, процедуры
var i,j,n,s,p:Integer; begin write('На сколько позиций сдвинуть? -'); readln(n); for i:=1 to k do for j:=1 to n do begin s:=a[i,k];//запоминание последнего элемента for p:=k downto 2 do//сдвиг к последнему впереди находящихся элементов a[i,p]:=a[i,p-1];//на 1 позицию вправо a[i,1]:=s//сдвиг последнего вперед end; writeln end; Procedure sdvigvniz(var a:matr); //сдвиг элементов вниз var i,j,n,s,p:Integer; begin write('На сколько позиций сдвинуть? -'); readln(n); for j:=1 to k do for i:=1 to n do begin s:=a[k,j]; for p:=k downto 2 do a[p,j]:=a[p-1,j]; a[1,j]:=s end; writeln end; сама задача осуществить циклический сдвиг элементов прямоугольной матрицы на n элементов вправо или вниз(в зависимости от введенного режима).нужно две процедуры объединить одной,у процедуры входной параметр будет режим |
10.04.2012, 15:55 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Ваш вопрос уже обсуждался на нашем форуме Двумерные массивы и процедуры PASCAL Процедуры |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|