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

Подсчет произведения всех элементов массива (цикл и рекурсия) - C++

Восстановить пароль Регистрация
 
VanKertis
0 / 0 / 0
Регистрация: 04.04.2016
Сообщений: 4
08.06.2016, 11:00     Подсчет произведения всех элементов массива (цикл и рекурсия) #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
#include <conio.h>
#include <cmath>
using namespace std;
unsigned long long Arr (unsigned int n)
{if (n==0)
    return 1;
return n*Arr(n-1);
}
int main ()
{
    setlocale (LC_ALL, "Russian");
    const int N = 10;
    int Arr[N];
    int proizv =1;
            cout << "Заполнение массива" << endl;
            for(int i(0);i<N;i++)
            {
                cout << "Введите значение для " << i+1 <<"элемента :";
                while (!(cin>>Arr[i]))
                {
                    cin.clear();
                    while (cin.get()!='\n');
                    cout << "Введите значение для " << i+1 <<"элемента" << endl;
                }
            }
    system ("cls");
        cout << "Введенный массив" << endl;
        
        for(int i(0);i<N;i++)
        {
            cout << "Элемент [" <<i+1<< "]"<< Arr [i]<< endl;
        }   
        cout << "Произведение всех элементов ="<< Arr(N);
        /*for (int i(0);i<N;i++)
        proizv *= Arr[i];
        cout << "Произведение всех элементов массива = "<< proizv << endl;*/
 
    _getch ();
    return (0);
Циклом посчитал, а вот рекурсивно... Функцию рекурсии вроде написал, а вот как в нее войти из основной функции...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2016, 11:00     Подсчет произведения всех элементов массива (цикл и рекурсия)
Посмотрите здесь:

Подсчет среднего геометрического всех элементов массива C++
C++ Функция: подсчет числа отрицательных элементов массива, и суммы положительных элементов матрицы
Вычислить сумму S = P1 + P2 произведения P1 четных элементов массива xi и произведения P2 четных элементов массива yi , i = 1, 2, 3 C++
Как созать цикл for для нахождения произведения элементов массива C++
Найти наименьший элемент матрицы и вычислить произведения элементов всех столбцов C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Bar-bar1an
1 / 1 / 1
Регистрация: 12.12.2014
Сообщений: 37
Завершенные тесты: 1
08.06.2016, 11:39     Подсчет произведения всех элементов массива (цикл и рекурсия) #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream>
 
using namespace std;
 
int prod(int*Arr,int n)
{
if(n==0)return Arr[0];
 return Arr[n]*prod(Arr,n-1);
}
int main(int argc, char *argv[])
{
    int mas[] = {1,2,3};
    cout<<prod(mas,2);//second parameter == number of elements in array - 1
    return 0;
}
VanKertis
0 / 0 / 0
Регистрация: 04.04.2016
Сообщений: 4
11.06.2016, 09:30  [ТС]     Подсчет произведения всех элементов массива (цикл и рекурсия) #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream>
 
using namespace std;
 
int prod(int*Arr,int n)
{
if(n==0)return Arr[0];
 return Arr[n]*prod(Arr,n-1);
}
int main(int argc, char *argv[])
{
    int mas[] = {1,2,3};
    cout<<prod(mas,2);//second parameter == number of elements in array - 1
    return 0;
}
Все понятно, шаблонов я кучу видел, но как реализовать рекурсию касательно моего кода и моих переменных.
Bar-bar1an
1 / 1 / 1
Регистрация: 12.12.2014
Сообщений: 37
Завершенные тесты: 1
11.06.2016, 13:54     Подсчет произведения всех элементов массива (цикл и рекурсия) #4
Можно сделать массив глобальним. Но ето будет плохая практика.
Yandex
Объявления
11.06.2016, 13:54     Подсчет произведения всех элементов массива (цикл и рекурсия)
Ответ Создать тему
Опции темы

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