В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
ЯРОСЛАФ
ЯРОСЛАФ
30.08.2022 06:59 •  Информатика

Ввести двумерный массив . Каждый элемент, стоящий в массиве на позиции с четной суммой индексов заменить остатком от деления этого элемента на 7. Массив вывести до и после преобразования. Решить задачу с использованием процедур пользователя.


Ввести двумерный массив . Каждый элемент, стоящий в массиве на позиции с четной суммой индексов зам

Показать ответ
Ответ:
dadfxhg
dadfxhg
15.10.2020 14:38

--- PascalABC.NET 3.6.2 ---

procedure MatrTransform<T>(var Matr: Array[,] of T; TransformRule: T -> T; IndicesPredicate: (integer,integer) -> boolean := nil);

begin

 if IndicesPredicate = nil then begin

   for var i:= 0 to Matr.GetLength(0)-1 do

   begin

     for var k := 0 to Matr.GetLength(1)-1 do

     begin    

       Matr[i,k] := TransformRule(Matr[i,k]);

     end;    

   end;

 end

 else

   for var i:= 0 to Matr.GetLength(0)-1 do

   begin

     for var k := 0 to Matr.GetLength(1)-1 do

     begin  

       if (IndicesPredicate(i,k)) then

       Matr[i,k] := TransformRule(Matr[i,k]);

     end;    

   end;

end;

begin

 var (n,m) := ReadInteger2('Enter dimensions of matrix: ');

 var A := ReadMatrInteger(n,m);

 A.Println;

 MatrTransform(A, x -> x mod 7, (row, col) -> (row+col) mod 2 = 0);

 println('');

 A.Println;

end.

З.Ы Решение представлено для текстовой версии задачи, в которой говориться о трансформации двумерного массива

З.Ы 2 Generic-Процедура MatrTransform<> Может изменять элементы матрицы как обращая внимание на позицию элемента в матрице, так и нет. По этому в ней больше кода, чем вам, возможно, нужно.

З.Ы 3 MatrTransform<> Может работать с двумерными массивами любого типа данных

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота