Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
bohdan_si
12 / 12 / 6
Регистрация: 03.10.2012
Сообщений: 83
1

Подсчет количества цифр в числе (рекурсивно)

03.12.2012, 23:00. Просмотров 520. Ответов 5
Метки нет (Все метки)

как сделать этот код с помощью рекурсии?

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
  int n,total=0;
  
  scanf("%d",&n);
  
  for(total=0;n!=0;total++){
      n=n/10;                
     }
  printf("%d",total);
  system("PAUSE");  
  return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2012, 23:00
Ответы с готовыми решениями:

Подсчет количества цифр 5 в числе
Ищет только если один раз 5 в 4-рех значном числе, но если например 4551,...

Рекурсивно посчитать количество цифр в заданном числе
Рекурсивно посчитать кол-во цифр в заданном числе.

Поиск нечетных цифр в числе и подсчет их суммы
программа выдает какие то непонятные ошибки , так как я только учусь писать на...

Подсчёт количества цифр в целом числе
Напишите программу, которая считывает целое число и определяет (выводя...

Подсчет количества цифр в числах: Error: expected expression before '<=' token
Доброго дня. Начал изучать Си, ради интереса решил написать бесконечный цикл,...

5
David Sylva
1295 / 957 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
03.12.2012, 23:04 2
Надо посчитать сколько цифр в числе.
1
bohdan_si
12 / 12 / 6
Регистрация: 03.10.2012
Сообщений: 83
03.12.2012, 23:07  [ТС] 3
Цитата Сообщение от David Sylva Посмотреть сообщение
Надо посчитать сколько цифр в числе.
Да. не знаю как сделать
0
David Sylva
1295 / 957 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
03.12.2012, 23:19 4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>  
 
int func(int number, int count) 
{  
    if(number == 0) 
        return count; 
    else 
        return func( number /= 10, ++count);
}
 
int main(void) 
{ 
    int number = 12345; 
    int count = 0; 
    printf("Count is %d\n", func(number, count)); 
}
1
bohdan_si
12 / 12 / 6
Регистрация: 03.10.2012
Сообщений: 83
03.12.2012, 23:26  [ТС] 5
Цитата Сообщение от David Sylva Посмотреть сообщение
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>  
 
int func(int number, int count) 
{  
    if(number == 0) 
        return count; 
    else 
        return func( number /= 10, ++count);
}
 
int main(void) 
{ 
    int number = 12345; 
    int count = 0; 
    printf("Count is %d\n", func(number, count)); 
}

код кодом, а если не сложно как работает функция? потому что рекурсию никак понять не могу
0
David Sylva
1295 / 957 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
04.12.2012, 00:09 6
Почитай про рекурсию, но главный смысл, что функция вызывает сама себя.
0
04.12.2012, 00:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2012, 00:09

Дано натурально число n. Сколько цифр в этом числе. Чему равняется сумма цифр. Найти первую цифру
Я написал для нахождения суммы цифр. Но выдает ошибку process exited with value...

Подсчет количества букв
Составить программу для подсчета количества латинских букв (больших и маленьких)

Подсчет количества чисел в файле
В файле test.txt написано: 0 -1 7 8. Консоль выводит результат: count positive...


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

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

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