profile
Опубликовано 5 лет назад по предмету Информатика от AlexTarakanova

Дано целочисленный массив из n элементов. Проверить, если массив является симметричным, то в каждой из его половин изменить порядок элементов на обратный. В противном случае его половины поменять местами.

  1. Ответ
    Ответ дан Аккаунт удален
    PascalABC.NET 3.3.5, сборка 1650 от 01.04.2018
    Внимание! Если программа не работает, обновите версию!

    begin
      var n:=ReadInteger('n=');
      var a:=ReadArrInteger('Вводите:',n);
      var m:=n div 2;
      if a.Zip(a.Reverse,(p,q)->p=q).All(t->t) then
        a:=(a[:m].Reverse+a[m:].Reverse).ToArray
      else
        a:=a[m:]+a[:m];
      a.Println
    end.

    Примеры
    n= 8
    Вводите: 1 2 3 4 4 3 2 1
    4 3 2 1 1 2 3 4

    n= 8
    Вводите: 1 2 3 4 4 3 6 1
    4 3 6 1 1 2 3 4
Самые новые вопросы