Условие задачи: Массив А вводится с клавиатуры. Найти среднее арифметическое его элементов с нечетными номерами. Размер произвольный. (Язык Pascal)
Сложность: легкая.
Решение задачи
Для начала продумаем решение. Нам сказано найти среднее арифметическое элементов массива с нечетными номерами, что это значит? Как вы знаете у массива каждое значение под своим номером, например:
mass[ 1 ] := 32 ; mass[ 2 ] := 43 ; |
Т.е. под номером 1 в массиве значение 32, под номером 2 значение 43, вот нам надо найти среднее арифметическое элементов массива с нечетными номерами, т.е. 1 3 5 и т.д.
Среднее арифметическое — это сумма всех элементов деленное на кол-во элементов, в нашем случаи сумма всех элементов с нечетными номерами деленное на их кол-во.
Массив мы будем вводить в самой программе, т.е. введем число, и проверим его номер, если он нечетный тогда этот элемент занесем в сумму, чтобы потом найти среднее арифметическое.
Для того чтобы решить задачу нам понадобятся следующие переменные:
Начнем мы с каркаса нашей программы
type
massiv = var mass : massiv; i, n, summa, count : sred : begin write readln; |
Тут мы создали свой тип данных для массива, как и зачем читайте ( тут ), попросили пользователя ввести кол-во элементов массива.
Теперь надо заполнять массив вручную, заполняется массив в цикле, как только мы введем число, нам надо проверить его номер на нечетность с помощью условия и операции mod, как это делается читайте (тут) и если номер нечетный то мы просто увеличиваем общую сумму чисел с нечетными номерами и их кол-во:
for i:= 1 to n do // делаем цикл для заполнения массива begin write if begin count := count + summa := summa + mass[i]; end end |
Теперь нам осталось поделить сумму на кол-во и мы найдем среднее арифметическое:
sred := summa / count; // находим среднее арифметическое |
Всё решение задачи Pascal
type
massiv = var mass : massiv; i, n, summa, count : sred : begin write for begin write if begin count := count + summa := summa + mass[i]; end end sred := summa / count; writeln readln; |