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

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

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

 
 Ответить  Открыть новую тему 
> Задача на массивы, массивы
сообщение
Сообщение #1





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

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


из целочисленного массива А сформировать массив В таким образом что i-й элемент массива B является средним арифметическим всех элементов массива A кроме тех, значения которых больше A[i], причем сделать это все надо через процедуры

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


Гуру
*****

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

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


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


Профи
****

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

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


program darkkrad00;

{ Процедура для вывода на экран целочисленных массивов }
procedure ShowArrayOfInteger(Title: String; const Arr: array of Integer);
var
i: Integer;
begin
Write(Title, ': ', Arr[Low(Arr)]);
for i := Low(Arr) + 1 to High(Arr) do
Write(', ', Arr[i]);
WriteLn('.');
end;

{ Процедура для вывода на экран массивов чисел действительного типа }
procedure ShowArrayOfReal(Title: String; const Arr: array of Real);
var
i: Integer;
begin
Write(Title, ': ', Arr[Low(Arr)]:0:2);
for i := Low(Arr) + 1 to High(Arr) do
Write(', ', Arr[i]:0:2);
WriteLn('.');
end;

{ Функция, вычисляющая значения для B[i] в соответствии с заданием }
function Calculate(Num: Integer; const Arr: array of Integer): Real;
var
i, Sum, Count: Integer;
begin
Sum := 0;
Count := 0;
for i := Low(Arr) to High(Arr) do
if Arr[i] <= Arr[Num] then begin
Sum := Sum + Arr[i];
Count := Count + 1;
end;
Calculate := Sum / Count;
end;

const
n = 10; { Размер массива }
var
A: array[1..n] of Integer;
B: array[1..n] of Real;
i: Integer;
begin
{ Заполнение массива A случайными числами от -1000 до 1000 }
Randomize;
for i := 1 to n do
A[i] := Random(2001) - 1000;

{ Вывод массива A на экран }
ShowArrayOfInteger('Массив A', A);

{ Заполнение массива A согласно условию }
for i := 1 to n do
B[i] := Calculate(i, A);

{ Вывод массива B на экран }
ShowArrayOfReal('Массив B', B);
end.


--------------------
Close the World...txeN eht nepO
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4





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

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


Спасибо, прекрасный код, очень мне помог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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