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

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

Войти
Регистрация
Восстановить пароль
 
Parilo
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
#1

Нужно количество цифр с рекурсивной функцией - C++

27.10.2012, 14:21. Просмотров 316. Ответов 7
Метки нет (Все метки)

Не могу найти ошибку. Надо найти кол-во цифр введённого числа с помощью рекурсивной функции.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
int sum=0;
int quantity (int);
int quantity (int n)
{ if(n!=0) { sum++; 
  return quantity (n/=10); }
  else sum;
}
 
 int main ()
{int g;
 cin >> g;
 cout << quantity (g);
 
 return 0;
}
Добавлено через 3 минуты
всё нашёл, пропустил "return" перед sum.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2012, 14:21     Нужно количество цифр с рекурсивной функцией
Посмотрите здесь:

Программа с рекурсивной функцией - C++
Друзья, помогите пожалуйста написать вот такую программу в Dev с++ Сколькими способами можно отобрать команду в составе 5 человек из 8...

программа с рекурсивной функцией - C++
написать программу на языке с++ решить задачу не используя операторы цикла написать программу с рекурсивной функцией вычисляющей

Создать структуру с рекурсивной функцией - C++
Создать структуру в которой ввод и вывод информации будет осуществлятся с помощью рекурсивной функции

Рекурсия,заполнение массива рекурсивной функцией. - C++
привет! рекурсия....это хуже всего!!! (( А рекурсивная функция, которая заполняет массив целых чисел значениями, вводимыми пользователем,...

Разница между рекурсивной функцией и обычной - C++
Как можно посчитать разницу между рекурсивной функцией и обычной? Там как то можно время работы функций высчитывать, как это сделать? Какие...

Разобраться с рекурсивной функцией обхода бинарного дерева - C++
Люди, помогите разобраться с рекурсивной функцией обхода бинарного дерева. Бьюсь головой об стену, не могу понять как она работает. ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
27.10.2012, 14:28     Нужно количество цифр с рекурсивной функцией #2
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
#include <iostream>  
 
static int count = 0;
 
int recurs(int number) 
{   
    if(number == 0) 
        return 1; 
    else  
    { 
        count++;
        return recurs(number /= 10); 
    }
}
 
int main() 
{   
    int number;
    std::cout << "Inter a number " << std::endl; 
    std::cin >> number; 
    recurs(number); 
    std::cout << "Count is " << count << std::endl;
    
}
John Prick
773 / 706 / 129
Регистрация: 27.07.2012
Сообщений: 2,022
Завершенные тесты: 3
27.10.2012, 14:32     Нужно количество цифр с рекурсивной функцией #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
/*
Надо найти кол-во цифр введённого числа с помощью рекурсивной функции.
*/
 
#include <iostream>
 
int DigitsNum(const int Value)
{
    return ((Value == 0) ? 0 : 1 + DigitsNum(Value / 10));
}
 
void ShowDigitsNum(const int Value)
{
    std::cout << Value << " - " << DigitsNum(Value) << '\n';
}
 
int main(void)
{
    ShowDigitsNum(100);
    ShowDigitsNum(1234);
    ShowDigitsNum(100500);
    system("pause");
}
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
27.10.2012, 14:34     Нужно количество цифр с рекурсивной функцией #4
John Prick, а в числе 0 сколько цифр?))
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
27.10.2012, 14:35     Нужно количество цифр с рекурсивной функцией #5
Цитата Сообщение от John Prick Посмотреть сообщение
Использовать глобальную переменную плохо. Без неё вполне можно обойтись:
в больших программах да, здесь нет. Попробуй свой код с 0.
John Prick
773 / 706 / 129
Регистрация: 27.07.2012
Сообщений: 2,022
Завершенные тесты: 3
27.10.2012, 14:36     Нужно количество цифр с рекурсивной функцией #6
0! Ноль - это "ничего", "пустота", значит и цифр там нет Шутка, конечно. Для 0 у меня 0 выведет. Но зато можно использовать эту функцию несколько раз подряд. В случае с глобальной переменной, придётся обнулять её каждый раз перед вызовом.
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
27.10.2012, 14:38     Нужно количество цифр с рекурсивной функцией #7
C++
1
2
3
4
unsigned int Count(unsigned int a)
{
   return a < 10 ? 1 : 1 + Count(a / 10);
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.10.2012, 14:41     Нужно количество цифр с рекурсивной функцией
Еще ссылки по теме:

Программа с рекурсивной функцией (расставляет между заданными шестью цифрами знаки операций) - C++
Написать программу с рекурсивной функцией, которая расставляет между заданными шестью цифрами знаки операций: сложения, вычитания,...

Создать программу с рекурсивной функцией, которая будет вычислять делится ли число на 11 или нет - C++
Создать прорамму с рекурсивной функцией, которая будет вычислять делится ли число на 11 или нет.

нужно посчитать количество цифр 4 и 9 в данном числе - C++
например, чтобы при вводе числа 14599 программа выдавала 3 помогите пожалуйста

Нужно определить количество одинаковых цифр в заданном числе - C++
Задача: Дано целое пятизначное число х. Вывести на экран сообщение о том, сколько в данном числе одинаковых цифр и каково их значение.


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

Или воспользуйтесь поиском по форуму:
John Prick
773 / 706 / 129
Регистрация: 27.07.2012
Сообщений: 2,022
Завершенные тесты: 3
27.10.2012, 14:41     Нужно количество цифр с рекурсивной функцией #8
Ну или так
Yandex
Объявления
27.10.2012, 14:41     Нужно количество цифр с рекурсивной функцией
Ответ Создать тему
Опции темы

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