Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 25.12.2015
Сообщений: 20
1

Задача на рекурсию

14.03.2016, 21:33. Просмотров 281. Ответов 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
int main()
{
 int n;
    setlocale(LC_ALL, "rus");
    int*ucaz;
    ucaz=&n;    
    printf("Ââåäèòå öåëîå çíà÷åíèå(ðàçìåð ìàññèâà): ");
    scanf("%3d", &n); // 
    
    int *a = new int[n];
    zapolnenie(a,n);
    zadanie1(a,n);
    //zadanie2(a,n);
    printf("\n");
    cout <<"Ðåçóëüòàò ðàâåí: "<< Func(a , 0 , n , 3 )<<endl;
        
    delete[] a;
    system("pause");
    return 0;
}
int Func(int* a , int num , int n , int result){
    cout<<"Razmer raven: "<<n<<endl;
    if(num < n){                                                      
        if(a[num] == 0)                                           
            return result;             
    }
    else     {                                     
            result *= a[num] ; 
        num++ ;                                                        
        return Func(a , num , n , result) ; 
        }                                              
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.03.2016, 21:33
Ответы с готовыми решениями:

Задача на рекурсию
Дано число. Вывести все цифры этого числа, не используя дополнительных библиотек, массивов, списков...

Задача на рекурсию
помогите написать пожалуйста программу на с++ по теме рекурсия. Задано действительное A, найти...

Задача на рекурсию
Вот код проги которую я написал: #include &lt;iostream&gt; using namespace std; int factr(double...

Задача на рекурсию
Задание: написать функцию умножения двух чисел, используя только операции сложения и рекурсии. Не...

1
248 / 154 / 118
Регистрация: 26.11.2012
Сообщений: 381
15.03.2016, 10:17 2
C++
1
2
3
4
5
6
7
8
int foo(int *a, int ind, const int size) {
    if (ind >= 0 && ind < size) {
        if (a[ind] != 0) 
            return a[ind] * foo(a, ind + 1, size);
        return foo(a, ind + 1, size);
    }
    return 1;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.03.2016, 10:17

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Задача на рекурсию
Дано натуральное число n. Выяснить, имеется ли среди чисел n, n+1, ..., 2n близнецы, т.е. простые...

Задача на рекурсию
Помогите решить след. задачу: Вот мой вариант, но здесь не сохраняется порядок: void Func()...

Задача на рекурсию
Всем доброго времени суток. Прошу подсказать мне условие задачи на рекурсию(нам дали задание самим...

задача на рекурсию в си++
Даны числа a и b. Определите, сколько существует последовательностей из a нулей и b единиц, в...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.