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

Забавочки с рекурсией

10.04.2017, 18:07. Просмотров 392. Ответов 3
Метки нет (Все метки)

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


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
#include <stdio.h>
#include <locale> 
long lucky( long n, long s);
 
long main()
{
      setlocale (LC_ALL, "RUS");
long result;
long a;
long s=0;
printf( "Enter an integer:  " );
scanf( "%ld", &a ); 
 result = lucky( a, s );
printf( "Количество счастливых %ld\n", result);
 
}
long lucky( long a, long s)
{
    long sum1 = ((a/100000) + (a/10000)%10 + (a/1000)%10);
    long sum2 = ((a/100)%10 +(a/10)%10 + (a%10));
     if (a==0)
     {
     return (s);        
     }
     else
     {
        if ( sum1 == sum2  )
        {
            return  (1+lucky (a-1, s));
        }
        else 
        {
            return  lucky (a-1, s);
        }
     }
Если вводить значение до 4700, то все окей, но если больше , то программа просто не работает. Господа, в чем проблема?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2017, 18:07
Ответы с готовыми решениями:

Узоры рекурсией
Написать программу, которая вычерчивает приведенные ниже узоры различных порядков. Узоры первого,...

Объяснить пример с рекурсией
#include&lt;stdio.h&gt; void gg(int a,int b) { int i=0; if(a==20) return; printf(&quot;%d\n&quot;,a);...

Заменить цикл рекурсией
Дана функция. float result(double x1, double e) { double x2; float temp; x2 = x1;...

Функция itoa с рекурсией
Упражнение в книге Кернигана и Ритчи,пишу на С Нашел в Сети решение,но никак не могу понять его...

Поиск минимального элемента в списке рекурсией
Вот мой код, но он рабочий только для нерекурсивной функции. Прошу помощи #include &lt;stdio.h&gt;...

3
likehood
984 / 828 / 396
Регистрация: 25.12.2016
Сообщений: 2,727
Завершенные тесты: 3
10.04.2017, 19:17 2
Цитата Сообщение от Nickshock Посмотреть сообщение
Если вводить значение до 4700, то все окей, но если больше , то программа просто не работает.
Возможно, просто заканчивается стек (глубина рекурсии равна введённому числу a).

В данном случае рекурсия просто имитирует цикл от a до 0. Подозреваю, что использовать рекурсию нужно было как-то иначе.
0
Nickshock
0 / 0 / 0
Регистрация: 10.10.2016
Сообщений: 3
10.04.2017, 19:26  [ТС] 3
А как еще здесь можно использовать рекурсию?
Может я просто не вижу, подскажите если знайте
0
likehood
984 / 828 / 396
Регистрация: 25.12.2016
Сообщений: 2,727
Завершенные тесты: 3
10.04.2017, 19:42 4
Цитата Сообщение от Nickshock Посмотреть сообщение
А как еще здесь можно использовать рекурсию?
Готового ответа у меня нет. Но могу посоветовать поискать на форуме: задача довольно распространённая, наверняка что-то уже было.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2017, 19:42

с++ с рекурсией
помогите плиз разобраться с рекурсией.завал по лабораторным В данной последовательности чисел...

Задача с рекурсией
Итак, нужно разработать рекурсивный вариант программы в функциональном стиле для решения задачи: ...

Сортировка рекурсией
Всем привет! На githab нашел код для сортировки рекурсией. #include &lt;iomanip&gt; #include...


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

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

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