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

Заполнить массив из 12 элементов случайными числами в интервале [-12..12] и выполнить реверс для каждой трети массива. пример: исходный массив: 4 -5 3 10 -4 -6 8 -10 1 0 5 7 результат: 10 3 -5 4 -10 8 -6 -4 7 5 0 1 есть готовая программа. объясните что да как. const n=12; var a: array[1..n] of integer; i,k,x: integer; begin randomize; writeln('исходный массив'); for i: =1 to n do begin a[i]: =-12+random(25); write(a[i]: 4); end; writeln; k: =n div 3; for i: =1 to k div 2 do begin x: =a[i]; a[i]: =a[k-i+1]; a[k-i+1]: =x; x: =a[k+i]; a[k+i]: =a[2*k-i+1]; a[2*k-i+1]: =x; x: =a[2*k+i]; a[2*k+i]: =a[n-i+1]; a[n-i+1]: =x end; writeln('инверсия третей массива'); for i: =1 to n do write(a[i]: 4); end.

Показать ответ
Ответ:
asiali1
asiali1
23.09.2020 14:27
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016
begin
  var a:=ArrRandom(12,-12,12); a.Println;
  var b:=a.Batch(a.Length div 3).Select(x->x.Reverse);
  var k:=0;
  foreach var e1 in b do
    foreach var e2 in e1 do begin a[k]:=e2; Inc(k) end;
  a.Println
end.

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