Как вывести четные элементы массива
Перейти к содержимому

Как вывести четные элементы массива

Вывод на печать четных и нечетных элементов массива в Python

В данном руководстве рассмотрим как вывести на печать элементы массива в четной и нечетной позициях в Python.

Четные элементы

Нам нужно напечатать элемент, который присутствует на четной позиции. Даже позиционированный элемент можно найти, пройдя массив и увеличив значение i на 2.

Программа Python для печати элементов массива, присутствующих в четной позиции

В приведенном выше массиве элементами на четной позиции являются b и d.

Алгоритм

  • ШАГ 1: Объявите и инициализируйте массив.
  • ШАГ 2: Рассчитайте длину объявленного массива.
  • ШАГ 3: Прокрутите массив, инициализируя значение переменной «i» равным 1(поскольку первый четный элемент лежит на i = 1), а затем увеличивая его значение на 2, т. е. i=i+2.
  • ШАГ 4: Распечатайте элементы, присутствующие в четных позициях.

Программа

Элементы нечетных позиций

Выведем элементы массива, которые находятся в нечетных позициях. Этого можно добиться, перебирая массив и печатая элементы массива, увеличивая i на 2 до тех пор, пока не будет достигнут конец массива.

Программа Python для печати элементов массива, присутствующих в нечетной позиции

В приведенном выше массиве на нечетных позициях присутствуют элементы a, c и e.

Найти количество четных чисел в массиве

Задача 2.74
Дан одномерный массив А неупорядоченных целых чисел. Вывести на экран количество чётных чисел, расположенных от начала массива до положения первого наибольшего элемента.

Сегодня я покажу вам, как из простой задачи сделать сложную )))

На самом деле, конечно, усложнение будет кажущимся. Ну да, я буду использовать константы, пользовательские типы данных и функции, хотя для такой задачи можно было бы обойтись и без них.

Но моя цель — не только показать решение, но и приблизить новичка к тому, как создаются настоящие программы.

Само решение я описывать не буду. Опытные и так поймут, а новичкам будет полезно разобраться самим (если что — в примерах программ есть комментарии). А расскажу только о том, для чего я использовал те или иные ходы. Итак…

Для чего используются константы, я уже говорил не раз. Но не грех и повторить. Если одно и то же постоянное значение имеется в программе в нескольких местах, то в случае его замены на другое, вам придётся менять это значение во всех участках программы. А это, во-первых, займёт больше времени, а во-вторых, где-то это значение можно просто пропустить. Если же вы используете константу, то при замене значения вам надо будет изменить его только в одном месте программы. Кроме того, давая константам осмысленные имена, вы будет понимать, для чего используется это значение, найдя имя константы в вашей программе из миллиона строк.

Зачем использовать пользовательский тип данных?

Тоже две причины.

Во-первых, в Паскале вы не можете в объявлении функции в качестве параметра использовать массив. То есть вот так:

не проканает. Компилятор будет шибко ругаться, однако. Поэтому сначала надо определить новый тип данных, например, вот так:

а потом уже можно объявить функцию, например, вот так:

Ну а почему бы тогда не использовать массив как глобальную переменную и не париться?

Дело в том, что использовать в подпрограммах глобальные переменные без крайней необходимости считается дурным тоном. И это не спроста.

Представьте, что у вас объявлен массив с элементами типа BYTE, и вы работаете с ним в нескольких функциях. Да так работаете, что приходится в функциях создавать локальные переменные — массивы с элементами типа BYTE. Это уже сильно неудобно. Но ещё веселее будет, если вам вдруг потребуется изменить тип элементов (например, WORD вместо BYTE). Надеюсь, вы понимаете, к чему я клоню. И это вторая причина применять пользовательский тип данных для массива.

Осталось рассказать, для чего используются функции в такой простой программе. Ну здесь ничего необычно — чтобы упростить исходный код основной программы.

Да, в этой учебной программе можно было обойтись и без лишних заморочек. Но если бы вы разрабатывали большую сложную программу, то одни и те же действия могли бы выполняться в ней несколько раз. И такие действия, конечно, удобно выполнять в виде функций.

Ну вот как-то так. А теперь примеры программ на Паскале и С++.

Найти количество четных чисел в массиве

ПРИМЕЧАНИЕ
Небольшое пояснение всё-таки дам. В функции GetNumOdd на первый взгляд слишком много лишнего. Но это связано с тем, что по условию задачи нам надо вывести чётные элементы до положения первого наибольшего элемента. То есть если наибольший элемент будет также чётным, то его учитывать не надо. Решение, которое я применил, не является самым изящным и самым простым. Можно было добиться того же итога более красиво. Если хотите — попробуйте. Можете считать это домашним заданием )))

ПРИМЕЧАНИЕ
Обратите внимание, что в примере на С++ индексация массива начинается с 0, поэтому исходный код не вполне соответствует примеру на Паскале.

ВНИМАНИЕ!
Если вам что-то осталось непонятно, то советую почитать книги “Основы программирования” и “Основы С++”.

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

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