Дан массив A(N). Получить массив B(N), i-й элемент которого равен среднему арифметическому первых i элементов - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Дан массив A(N). Получить массив B(N), i-й элемент которого равен среднему арифметическому первых i элементов массива А: bi = (a1 + a2 + ... + ai ) / i

Решение задачи: «Дан массив A(N). Получить массив B(N), i-й элемент которого равен среднему арифметическому первых i элементов»

textual
Листинг программы
const
  n = 10;
type
  vector = array[1 .. n] of double;
var
  a : vector =
    (1, 2, 3, 4, 5, 6, 7, 8, 9, 10); 
  b : vector;
  i : integer;
  s : double;
 
begin
  for i := 1 to n do write(a[i]:6:2);
  writeln;
  s := 0;
  for i := 1 to n do
  begin
    s := s + a[i];
    b[i] := s / i;
    write(b[i]:6:2);
  end;
  writeln;
end.

Объяснение кода листинга программы

  1. Объявлены константа n со значением 10 и тип данных vector как массив из 10 элементов типа double.
  2. Объявлены переменные a типа vector и инициализированы первыми 10 натуральными числами.
  3. Объявлены переменные b типа vector, i типа integer и s типа double.
  4. В цикле for выводятся первые 10 элементов массива a с шагом 2 символа.
  5. Переменная s инициализируется нулем.
  6. В цикле for суммируются первые i элементов массива a, затем полученная сумма делится на i и записывается в i-й элемент массива b.
  7. После каждой итерации выводится i-й элемент массива b с шагом 2 символа.
  8. В конце программы выводится символ новой строки.

Оцени полезность:

14   голосов , оценка 4.143 из 5
Похожие ответы