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

Pascal
дан двухмерный массив, нужно заменить первые k элементов на противоположные по знаку. ограничений нет, используйте сколько хотите переменных;

Показать ответ
Ответ:
1830583
1830583
03.09.2020 11:18

===== PascalABC.NET =====

begin

 var (m, n) := ReadInteger2('Число строк и столбцов массива:');

 var a := MatrRandom(m, n, -99, 99);

 a.Println(4);

 var k := ReadInteger('Сколько первых элементов обработать?');

 if not k.InRange(1, m * n) then

   Println('Введено недопустимое значение')

 else

 begin  // замена построчно

   var r := k div n;   // число полных строк

   if r > 0 then

   for var i := 0 to r - 1 do

     for var j := 0 to n - 1 do

       a[i,j] := -a[i,j];

   for var j := 0 to k - r * n - 1 do

     a[r,j] := -a[r,j];

   a.Println(4)  

 end

end.

Второй вариант использует более продвинутые возможности PascalABC.NET. Замена выполняется единственным оператором.

begin

 var (m, n) := ReadInteger2('Число строк и столбцов массива:');

 var a := MatrRandom(m, n, -99, 99);

 a.Println(4);

 var k := ReadInteger('Сколько первых элементов обработать?');

 if not k.InRange(1, m * n) then

   Println('Введено недопустимое значение')

 else

 begin  // замена построчно

   a.Transform((p, i, j) -> n * i + j < k ? -p : p);

   a.Println(4)  

 end

end.


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