Решаем задачи Абрамян на Паскале. Array66

Array66. Дан целочисленный массив размера $$N$$. Увеличить все четные числа, содержащиеся в массиве, на исходное значение первого четного числа. Если четные числа в массиве отсутствуют, то оставить массив без изменений.

Решение:

 

Задачи из раздела Array  можно посмотреть здесь.

Комментарии:

Комментарии 6

    • Что то я не понял… вы создали массив состоящий из значения элемента a[k] а потом прибавляете …
      В общем зачем?! почему не прибавлять a[k] вместо TempArray[i]? и вообще TempArray можно будет убрать..
      Да и обвязка функции становиться больше тела функции…

      • Да уж.. Что то увлекся немного

      • Исправил 🙂

        Пришлось также поменять строчку #29:

        А то присваивалось новое значение k после увеличения первого четного

        • Да, так лучше… 🙂 но всё таки считаю, что функция конкретно в этом случае излишня. Из за неё приходиться объявлять тип:

          Писать обвязку:

          И вызывается она в таком месте, что конструкция :

          Никак не ухудшила бы читаемость…
          Но если это всё сделать то будет практически тоже самое, что и в шапке 🙂

  • Если массив не содержит четных чисел, то в строке 19 ошибка выхода индекса за границу массива. Нужно поменять условия местами, чтобы проверялось сначала i <= N

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *