Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
montkay
10 / 10 / 8
Регистрация: 19.02.2014
Сообщений: 72
#1

Рекурсивная функция. Посчитать среднее арифметическое элементов массива - C++

19.02.2014, 01:06. Просмотров 1416. Ответов 6
Метки нет (Все метки)

Нужно с помощью рекурсивной функции посчитать среднее арифметическое элементов массива.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2014, 01:06     Рекурсивная функция. Посчитать среднее арифметическое элементов массива
Посмотрите здесь:

C++ Посчитать среднее арифметическое элементов массива, расположенных между max и min
C++ Функция,среднее арифметическое массива.
C++ Функция, которая возвращает среднее арифметическое элементов параметра-массива
C++ Посчитать среднее арифметическое каждых третьих значений массива
Рекурсивная функция: вычислить среднее арефметическое элементов одномерного массива C++
Рекурсивная функция произведения элементов массива C++
C++ Найти среднее арифметическое значение четных элементов и среднее арифметическое нечетных элементов и сравнить их между собой
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fnktastic
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 5
19.02.2014, 01:18     Рекурсивная функция. Посчитать среднее арифметическое элементов массива #2
Цитата Сообщение от montkay Посмотреть сообщение
Нужно с помощью рекурсивной функции посчитать среднее арифметическое элементов массива.
Поищите в поиске, точно такое было уже.
montkay
10 / 10 / 8
Регистрация: 19.02.2014
Сообщений: 72
19.02.2014, 11:14  [ТС]     Рекурсивная функция. Посчитать среднее арифметическое элементов массива #3
Да, искал. Много похожих - по типу сумма элементов массива, разные прогрессии, формулы и т.д. Но меня интересует именно среднее арифметическое. Такого не находил.
Ilot
Модератор
Эксперт С++
1785 / 1160 / 225
Регистрация: 16.05.2013
Сообщений: 3,056
Записей в блоге: 5
Завершенные тесты: 1
19.02.2014, 11:30     Рекурсивная функция. Посчитать среднее арифметическое элементов массива #4
Цитата Сообщение от montkay Посмотреть сообщение
Нужно с помощью рекурсивной функции посчитать среднее арифметическое элементов массива.
Не представляю как это можно вразумительно реализовать...
Ведь вы не можете на каждой ступени реккурсиии вычислять среднее. Можно только найти сумму элементов массива.
Вообще-то руки нужно поотбивать преподам которые дают такие задания, имхо.
stikkas
19 / 19 / 6
Регистрация: 26.01.2014
Сообщений: 56
19.02.2014, 12:11     Рекурсивная функция. Посчитать среднее арифметическое элементов массива #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
double average(int *arr, int n);
 
int main() {
    const int SIZE = 10;
    int numbers[SIZE] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    cout << "Average sum is: " << average(numbers, SIZE) << endl;
    return 0;
}
 
double average(int *arr, int n) {
    static double res = 0;
    static int size = n;
    --n;
    if (n == 0) {
        return (res + arr[n]) / size;
    }
    res += arr[n];
    return average(arr, n);
}
Я этот препод
Ilot
Модератор
Эксперт С++
1785 / 1160 / 225
Регистрация: 16.05.2013
Сообщений: 3,056
Записей в блоге: 5
Завершенные тесты: 1
19.02.2014, 12:22     Рекурсивная функция. Посчитать среднее арифметическое элементов массива #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Вот это и называется невразумительное решение. Ведь вы вычисляете среднее только на последней итеррации, а до этого идет простое суммирование массива.
Вот это более вразумительное:
C++
1
2
3
4
5
double average(int *arr, int n) {
    if (n == 1)
        return arr[n - 1];
    return ((n-1) * average(arr, n - 1) + arr[n - 1])/n;
}
Но все равно шито белыми нитками, а препода на мясо.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2014, 15:52     Рекурсивная функция. Посчитать среднее арифметическое элементов массива
Еще ссылки по теме:

В одномерном числовом массиве посчитать среднее арифметическое отрицательных элементов C++
C++ Посчитать среднее арифметическое положительных элементов каждого столбца
Посчитать среднее арифметическое элементов массива с помощью функции C++
Функция определяющая среднее арифметическое элементов массива C++
Посчитать и вывести среднее арифметическое элементов массива, не превышающих B C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
montkay
10 / 10 / 8
Регистрация: 19.02.2014
Сообщений: 72
19.02.2014, 15:52  [ТС]     Рекурсивная функция. Посчитать среднее арифметическое элементов массива #7
Спасибо большое =) Преподаватель - хороший. Просто система обучения такая у нас - много и сразу нужно учить. По этому иногда не успеваешь разобраться в таких функциях.

Добавлено через 44 минуты
Спасибо, Ваш код тоже мне помог. Но мы ещё не изучали переменные "static", по этому сложно понять код.
Yandex
Объявления
19.02.2014, 15:52     Рекурсивная функция. Посчитать среднее арифметическое элементов массива
Ответ Создать тему
Опции темы

Текущее время: 15:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru