Задачи по Pascal. Найти среднее арифметическое элементов массива с нечетными номерами.

Задачи по Pascal

словие задачи: Массив А вводится с клавиатуры. Найти среднее арифметическое его элементов с нечетными номерами. Размер произвольный. (Язык Pascal)

Сложность: легкая.

Решение задачи

Для начала продумаем решение. Нам сказано найти среднее арифметическое элементов массива с нечетными номерами, что это значит? Как вы знаете у массива каждое значение под своим номером, например:

1
2
mass[1] := 32;
mass[2] := 43;

Т.е. под номером 1 в массиве значение 32, под номером 2 значение 43, вот нам надо найти среднее арифметическое элементов массива с нечетными номерами, т.е. 1 3 5 и т.д.

Среднее арифметическое — это сумма всех элементов деленное на кол-во элементов, в нашем случаи сумма всех элементов с нечетными номерами деленное на их кол-во.

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

Для того чтобы решить задачу нам понадобятся следующие переменные:

  1. Переменная mass — для массива
  2. Переменная i — для цикла
  3. Переменная n — для кол-ва элементов массива
  4. Переменная count — для кол-во нечетных номеров
  5. Переменная summa — для сумма элементов с нечетными номерами
  6. Переменная sred — для сред.ариф.

Начнем мы с каркаса нашей программы

1
2
3
4
5
6
7
8
9
10
11
12
13
type
massiv = array [1..1000] of integer; // создаём свой тип данных для массива
var
mass : massiv; // объявляем переменные
i, n, summa, count : integer; // объявляем переменные
sred : real; // объявляем переменные
begin
write('Введите длину массива : ');readln(n); // просим пользователя ввести длину массива
readln; // чтобы программа не закрывалась
end.

Тут мы создали свой тип данных для массива, как и зачем читайте ( тут ), попросили пользователя ввести кол-во элементов массива.

Теперь надо заполнять массив вручную, заполняется массив в цикле, как только мы введем число, нам надо проверить его номер на нечетность с помощью условия и операции mod, как это делается читайте (тут) и если номер нечетный то мы просто увеличиваем общую сумму чисел с нечетными номерами и их кол-во:

1
2
3
4
5
6
7
8
9
for i:=1 to n do // делаем цикл для заполнения массива
begin
write('Введите ', i , ' элемент : ');readln(mass[i]); // заполняем массива вручную
if (i mod 2 <> 0) then // проверяем на нечетность номер элемента, если нечетный, то
begin
count := count + 1; // увеличиваем кол-во нечетных номеров
summa := summa + mass[i]; // и увеличиваем сумму
end;
end;

Теперь нам осталось поделить сумму на кол-во и мы найдем среднее арифметическое:

1
sred := summa / count; // находим среднее арифметическое

Всё решение задачи Pascal

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
type
massiv = array [1..1000] of integer; // создаём свой тип данных для массива
var
mass : massiv; // объявляем переменные
i, n, summa, count : integer; // объявляем переменные
sred : real; // объявляем переменные
begin
write('Введите длину массива : ');readln(n); // просим пользователя ввести длину массива
for i:=1 to n do // делаем цикл для заполнения массива
begin
write('Введите ', i , ' элемент : ');readln(mass[i]); // заполняем массива вручную
if (i mod 2 <> 0) then // проверяем на нечетность номер элемента, если нечетный, то
begin
count := count + 1; // увеличиваем кол-во нечетных номеров
summa := summa + mass[i]; // и увеличиваем сумму
end;
end;
sred := summa / count; // находим среднее арифметическое
writeln('Среднее арифметическое с нечетными номерами : ' , sred); // выводим результат
readln; // чтобы программа не закрывалась
end.
cyber
Оцените автора
CyberLesson | Быстро освоить программирование Pascal и C++. Решение задач Pascal и C++
Добавить комментарий