Напишите рекурсивную функцию, которая возвращает среднее из n элементов массива чисел - Pascal

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

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

Напишите рекурсивную функцию, которая возвращает среднее из n элементов массива чисел. помогите сделать с помощью функции или процедуры ! Заранее спасибо.

Решение задачи: «Напишите рекурсивную функцию, которая возвращает среднее из n элементов массива чисел»

textual
Листинг программы
uses crt;
const n=10;
var m:array[1..10]of integer;
var i:integer;
 
function SR(n:integer):real;
begin
 if n=1 then Sr:=m[1] else
 SR:=((n-1)*SR(n-1)+m[n])/n;
end;
 
begin
 clrscr;
 write('-> ');
 for i:=1 to n do read(m[i]);
 readln;
 writeln('SR=',sr(n):0:5);
 readln;
end.

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

В данном коде используется язык программирования Pascal. Он содержит следующие элементы:

  1. uses crt;: Подключение стандартной библиотеки ввода-вывода.
  2. const n=10;: Определение константы n, которая равна 10.
  3. var m:array[1..10]of integer;: Объявление переменной m, которая представляет собой массив целых чисел размером от 1 до 10.
  4. var i:integer;: Объявление переменной i, которая является целочисленной.
  5. function SR(n:integer):real;: Объявление функции SR, которая принимает целочисленный аргумент n и возвращает вещественное число SR.
  6. begin: Начало блока кода.
  7. if n=1 then Sr:=m[1] else: Если n равно 1, то присвоить переменной Sr значение m[1], иначе выполнить следующие действия:
    • Вызвать функцию SR(n-1) (заменив n на n-1).
    • Присвоить переменной SR результат вычисления (n-1)*SR(n-1)+m[n]\) делённого наn`.
  8. end;: Конец блока кода функции SR.
  9. begin: Начало блока кода.
  10. clrscr;: Очистка экрана.
  11. write('-> ');: Вывести на экран символ ->.
  12. for i:=1 to n do read(m[i]);: Чтение n значений из массива m в переменную i.
  13. readln;: Ожидание нажатия клавиши для завершения чтения.
  14. writeln('SR=',sr(n):0:5);: Вывести на экран строку SR= с десятичным представлением значения функции SR(n).
  15. readln;: Ожидание нажатия клавиши для завершения вывода.
  16. end;: Конец блока кода.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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