Помощь - Поиск - Пользователи - Календарь
Полная версия: Задачка на массивы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Гость_Dark
Если не сложно решите пожалуйста эту задачку!
Дан массив X1,...x10. Если среди первых пяти его элементов есть хотя бы один отрицательный, то вместо пяти последних поставьте среднее аоифметическое всего массива. Массив читается из внешнего файла.
Заранее благодарен!!!
volvo
Цитата
вместо пяти последних поставьте среднее аоифметическое всего массива


То есть вместо каждого из 5 последних, или размерность массива изменится?
GoodWind
Цитата
вместо пяти последних поставьте среднее аоифметическое всего массива.


ключевое слово "вместо"...
volvo
huh.gif Ну, если
Цитата
ключевое слово "вместо"...


то выглядеть это будет так (ввод из файла добавишь сам):

Код

const
 n = 10;
 a: array[1 .. n] of real =
   (2, 4, 8, 1, -1, 3, 7, 5, 3, 8);

var
 size, i: integer;
 s: real;
 was_found: boolean;
begin
 was_found := false;
 size := n;
 for i := 1 to size do
   begin
     s := s + a[i];
     was_found := was_found or
       ((i in [1 .. 5]) and (a[i] < 0))
   end;

 if was_found then
   begin
     dec(size, 4); a[size] := s / n;
   end;

 { в size хранится "реальный" размер массива }
end.
Гость_Dark
Спасибо!!!! Оказывается всё реально просто.........
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.