Как найти среднее арифметическое в паскале

от admin

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

Условие задачи : Задан массив А, состоящий из n чисел. Найти среднее арифметическое его элементов. Элементы вводятся с клавиатуры.

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

Данную задачу мы будем решать на основе этой (ссылка), но там мы искали просто сумму, здесь же нам надо в добавок найти среднее арифметическое всех этих чисел :

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

Начнем решать задачу.

Первое что мы сделаем мы создадим свой тип данных как и зачем читайте (тут) :

Дальше уже объявим переменные которые нам понадобятся :

Для чего они нужны :
i — для цикла, когда мы будем заполнять массив
n — кол-во элементов
summa — сумма элементов массива
…дальше понятно без слов ))

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

write
(
‘Введите кол-во элементов : ‘
); readln(n);
summa :=
0
;
// начальное значение

Дальше делаем цикл в нем мы просим пользователя ввести число и сразу прибавляем к текущей сумме :

summa := summa + A[i];

Ну и всё, осталось только подсчитать среднее арифметическое, т.е. мы сумму делим на количество элементов (n)

2.2.3.2. Поиск значений среднего арифметического и среднего геометрического элементов массива

Среднее арифметическое (обозначим как SA) всех значений элементов массива подсчитывается по формуле:

где S – это сумма всех элементов, K – количество просуммированных элементов. Алгоритмы поиска суммы и количества элементов были подробно рассмотрены в п/п 2.2.3.1. Но в тех случаях, когда SA находят только среди элементов, удовлетворяющих некоторому условию, следует учитывать тот факт, что таких элементов в массиве может и не быть, и тогда К = 0. Чтобы избежать деления на 0, необходимо при получении значения SA осуществлять соответствующую проверку: К > 0. На рис. 9 приведена блок-схема алгоритма поиска SA положительных элементов и фрагмент программы.

Среднее геометрическое значений массива (обозначим через SG) вычисляется по следующей формуле:

где Р – произведение элементов массива, K – количество элементов. Аналогично, как и в алгоритме поиска SА элементов, удовлетворяющих некоторому условию, необходимо учитывать вариант К = 0. На рис. 10 приведена блок-схема алгоритма поиска среднего геометрического отрицательных элементов массива и соответствующий фрагмент программы.

Разность между максимальным элементом и средним арифметическим значением

Задача 2.98
Дан одномерный массив А неупорядоченных целых чисел. Вывести на экран разность между наибольшим элементом и средним арифметическим значением для отрицательных элементов. Если отрицательных элементов нет, то вывести на экран сообщение НЕТ.

Для начала вспомним, что такое среднее арифметическое значение.

Читать:
Как аппроксимировать график в origin

Среднее арифметическое — это сумма всех чисел множества, делённая на их количество. Например, у нас есть 5 чисел: 1, 7, 10, 2, 15 . Тогда среднее арифметическое будет равно:

(1 + 7 + 10 + 2 + 15) / 5 = 35 / 5 = 7

Может ли среднее арифметическое быть отрицательным числом

Конечно, может. Ведь числа в множестве могут быть как положительными, так и отрицательными. И, в зависимости от того, каким числом будет сумма этих чисел — положительным или отрицательным, среднее арифметическое будет иметь соответствующий знак. Например, у нас есть 5 чисел: 1, -7, 10, 2, -15 . Тогда среднее арифметическое будет равно:

(1 — 7 + 10 + 2 — 15) / 5 = -9 / 5 = -1,8

Таким образом, среднее арифметическое значение для отрицательных элементов массива вычисляется точно также, как и для положительных.

А теперь перейдём к решению задачи.

Вот здесь я рассказал о том, как можно найти наименьшее значение в массиве. Наибольший элемент можно найти подобным способом, поэтому в данной статье останавливаться на этом не буду.

Итак, что нам нужно сделать:

  1. Найти наибольший элемент в массиве.
  2. Найти все отрицательные значения в массиве и вычислить для них среднее арифметическое.
  3. Вычислить разность между наибольшим элементом массива и средним арифметическим отрицательных чисел.

Примеры программ на Паскале и С++.

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

Научный форум dxdy

Turbo pascal.Нахождение среднего арифметического в массиве

Моя задача:Дан массив С(N).Найти среднее арифметическое положительных элементов с четными индексами.
программу вроди бы понимаю как написать,но что-то не Выходит.пока еще новичок и не очень понимаю.КАК ПРАВИЛЬНО?Укажите на ошибки или помогите исправить что-бы заработала правильно.

uses crt;
var C:array[1..100] of real;
i,k,n:real;
S:real;
begin
clrscr;
write(‘Vvedite kol-vo elementov:’);readln(n);
write(‘vvedite znachenie:’);
readln(c[i]);
k:=0; s:=0;
for i:=1 to n do
begin
if (i) mod 2=0 and (c[i]>0) then begin
s:=s+c[i];inc(k);
end;
writeln(‘Srednee arifmetichescoe= ‘,s/k);
end;

Последний раз редактировалось arseniiv 09.12.2012, 16:34, всего редактировалось 1 раз.

Чтобы ввести массив, вам надо ввести его элементы по очереди в цикле, а не так как сейчас.

Переменная i должна быть только порядкового типа (например, Integer ), т. к. ей индексируется массив b, а ещё она счётчик цикла for — вещественные типы в этих местах использовать нельзя.

— Вс дек 09, 2012 19:34:32 —

И не забывайте о правильных отступах.

Последний раз редактировалось g_coder 17.12.2012, 16:33, всего редактировалось 1 раз.

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

Похожие статьи