Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Нахождение среднего арифметического элементов массива

20K
24 октября 2006 года
onyxed-within@mail.ru
3 / / 18.10.2006
Прошу помочь!
Нужно решить задачу + написать блок схему...

Задача:

Дан массив размера N и целые числа K и L ( 1 < K <= (меньше,либо равно) L <= (меньше,либо равно) N ).
Найти среднее арифметическое всех элементов массива,кроме элементов с номерами от K до L включительно.

Pascal




Буду очень признателен.
261
24 октября 2006 года
ahilles
1.5K / / 03.11.2005
var
sr:real;
i:integer;

begin
sr:=0;
for i=k to l do
sr:=sr+arr;
sr:=sr/(l-k+1);

после чего в переменной sr среднее арифметическое
12K
24 октября 2006 года
rjx
55 / / 11.03.2006
[QUOTE=ahilles]var
sr:real;
i:integer;

begin
sr:=0;
for i=k to l do
sr:=sr+arr;
sr:=sr/(l-k+1);

после чего в переменной sr среднее арифметическое[/QUOTE]

Это разве "...среднее арифметическое всех элементов массива,кроме элементов с номерами от K до L включительно"?

Думаю, всё таки надо изменить на
 
Код:
...
for i:=1 to n do if (i<k) and (i>l) then sr:=sr+arr;
...
247
25 октября 2006 года
wanja
1.2K / / 03.02.2003
и делить надо на k+n-l-1
16K
25 октября 2006 года
PeaK
49 / / 02.10.2006
[QUOTE=rjx]
 
Код:
for i:=1 to n do if (i<k) and (i>l) then sr:=sr+arr;
[/QUOTE]
Поскольку K<L, то числа меньшего K и больше чем L не существует - условие невыполнимо.
Проще и правильнее сделать два цикла, что бы избежать пустых итераций.
Например
 
Код:
sr := 0 ;
for i:=1 to k-1 do
  sr:=sr+arr;
for i:=L+1 to N do
  sr:=sr+arr;
Srednee := sr/(N - L + K - 1 )) ;
3.0K
25 октября 2006 года
Мerlin
267 / / 25.07.2006
сумму нужно делить на
N - (L - K + 1);
16K
25 октября 2006 года
PeaK
49 / / 02.10.2006
[QUOTE=Мerlin]сумму нужно делить на
N - (L - K + 1);[/QUOTE]
А если поделить на (N - L + K - 1 ) - сильно изменится результат? :)
Честно говоря, я, как большой лентяй, просто поленился скобочки ставить.
3.0K
25 октября 2006 года
Мerlin
267 / / 25.07.2006
[QUOTE=PeaK]А если поделить на (N - L + K - 1 ) - сильно изменится результат? :)
Честно говоря, я, как большой лентяй, просто поленился скобочки ставить.[/QUOTE]Было 3 формулы:
l-k+1
k+n-l-1
(N - L + K - 1 )

Первый проверил. В осталльных (правильных) я уже только смотрел, похожи или не похожи на "мою формулу". :)
11K
26 октября 2006 года
denamer
19 / / 20.02.2006
Так значит правильно вот так:

var
sr:real;
i,k,l,n:integer;

begin
sr := 0 ;
for i:=1 to k-1 do
sr:=sr+arr;
for i:=L+1 to N do
sr:=sr+arr;
Srednee := sr/(N - L + K - 1 )) ;

А почему array - arr?
Компьютер это не воспринимает! Пишешь array - тоже неправильно!
Вводить array надо в начале? Какая концовка, чтоб на экран вышло это число?! А то я вообще не врубаюсь...!
Напишите пожалуйста!!! Прошу!!!
11K
26 октября 2006 года
denamer
19 / / 20.02.2006
А блок-схему кто-нибудь может написать? Я вообще не умею их делать!
Напишите пожалуйста!
16K
26 октября 2006 года
PeaK
49 / / 02.10.2006
Там где самое начало под словом Var пишем
"arr: array[1..N] of real ;"
94K
01 декабря 2014 года
Артём Забашта
1 / / 01.12.2014
Найти среднее арифметическое элементов массива x(n) , исключив из них максимальное и минимальное значение
Надо написать в паскале ... может кто помочь ?
465
02 декабря 2014 года
QWERYTY
595 / / 25.03.2012
Цитата: PeaK
...
"arr: array[1..N] of real ;"



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

88K
08 декабря 2014 года
Roleri
9 / / 02.12.2014
Найти среднее арифметическое элементов массива x(n) , исключив из них максимальное и минимальное значение
Надо написать в паскале ... может кто помочь ?


Находите сумму всех элементов, а также максимальный и минимальный. Вычитаете то, что нужно исключить, из общей суммы. Результат делите на n - 2.

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог