IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Найти среднее арифметическое значение X и среднее квадратное отклонение σ:
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Женский

Репутация: -  0  +


Мальчики помогите.
Дан массив X(N). Найти среднее арифметическое значение X и среднее квадратное отклонение σ.

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской
Ада: Разработчик
Embarcadero Delphi: Сторонник
Free Pascal: Разработчик

Репутация: -  627  +


Цитата
и среднее квадратное отклонение σ.
Среднеквадратическое отклонение (оно же корень квадратный из дисперсии)

for i := 1 to N do
aver := aver + X[ i ];
aver := aver / N;

for i := 1 to N do
sigma := sigma + sqr(X[ i ] - aver);
sigma := sqrt(sigma / N);
Всё просто.

Сообщение отредактировано: IUnknown -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 4
Пол: Женский

Репутация: -  0  +


Цитата(IUnknown @ 5.06.2012 19:43) *

Среднеквадратическое отклонение (оно же корень квадратный из дисперсии)

for i := 1 to N do
aver := aver + X[ i ];
aver := aver / N;

for i := 1 to N do
sigma := sigma + sqr(X[ i ] - aver);
sigma := sqrt(sigma / N);
Всё просто.



Спасибочки blum.gif а как с "Найти среднее арифметическое значение X"?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Сложить все числа и разделить на количество.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гуру
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской
Ада: Разработчик
Embarcadero Delphi: Сторонник
Free Pascal: Разработчик

Репутация: -  627  +


Среднее арифметическое X находится в моем коде в переменной aver, если что. Без среднего арифметического посчитать сигму... Хм... как бы это сказать... Несколько затруднительно, поэтому мы сначала ищем среднее арифметическое элементов, а потом с его помощью - отклонение.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6





Группа: Пользователи
Сообщений: 4
Пол: Женский

Репутация: -  0  +


Цитата(IUnknown @ 5.06.2012 20:50) *

Среднее арифметическое X находится в моем коде в переменной aver, если что. Без среднего арифметического посчитать сигму... Хм... как бы это сказать... Несколько затруднительно, поэтому мы сначала ищем среднее арифметическое элементов, а потом с его помощью - отклонение.


Что я сделала не так? Пишет что "нельзя преобразовать тип real к integer".

Const
n=10;

Var
X:array [1..n] of integer;
i,aver:integer;

begin
Write('Введите массив: ');
For i:=1 to n do
Read(X[i]);
Readln;

for i := 1 to N do
aver := aver + X[ i ];
aver := aver / N;

for i := 1 to N do
sigma := sigma + sqr(X[ i ] - aver);
sigma := sqrt(sigma / N);

Writeln('среднее арифметическое - ',aver);
Writeln('отклонение - ',sigma);
Readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Потому что среднее арифметическое это вещественное число,а у вас оно обьявлено, как целое. Надо обьявить его, как вещественное и все.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гуру
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской
Ада: Разработчик
Embarcadero Delphi: Сторонник
Free Pascal: Разработчик

Репутация: -  627  +


Цитата
и все.
Ну, не всё smile.gif Сигма вон вообще не объявлена. Она, кстати, тоже вещественная. И это, не забывай обнулять переменные перед суммированием. Я этого не сделал - потому что набросок, а в программе лучше обнулять...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


А я,как турбо паскаль,до первой ошибки smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10





Группа: Пользователи
Сообщений: 4
Пол: Женский

Репутация: -  0  +


Я плохо знаю что такое отклонение правильно ли оно выводится?

Const
nn=10;

Var
X:array [1..nn] of integer;
i, n :integer;
aver, sigma :real;

begin
Write('Количество элементов? '); Readln(n);
For i:=1 to n do
Read(X[i]);
Readln;

for i := 1 to N do
aver := aver + X[ i ];
aver := aver / N;

for i := 1 to N do
sigma := sigma + sqr(X[ i ] - aver);
sigma := sqrt(sigma / N);

Writeln('среднее арифметическое - ',aver);
Writeln('отклонение - ',sigma);
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(IUnknown @ 5.06.2012 19:50) *

Без среднего арифметического посчитать сигму... Хм... как бы это сказать...

Это правильнее, когда данные идут одно за другим (например, в результате многократного повторения эксперимента), а отдельно хранить их нельзя.
Надо всего лишь отдельно считать сумму квадратов и применить одну формулу.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 19.04.2024 11:53
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name