Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.65
Chiko94
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
#1

Определение количества цифр в целом числе - C++

21.11.2011, 20:48. Просмотров 2745. Ответов 42
Метки нет (Все метки)

Помогите плиз)

Вот вариант что нужно сделать!


написать подпрограмму-функцию определения кол-во цифр в целом числе n(если после деления k раз числа n на 10 в целой части числа будет ноль, то k-кол-во цифр в числе n) и использовать ее для вычисления кол-во цифр во вводимых с клавиатуры пяти числах.

заранее спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2011, 20:48
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Определение количества цифр в целом числе (C++):

Определение количества цифр в восьмеричном числе
Помогите сделать программу, пожалуйста! Алгоритм определения кол-ва цифр в...

Определить, сколько цифр в целом положительном числе
нужно сделать на С. -Задано целое додатне число N. Определить, сколько в нем...

Рекурсия, подсчитать количество цифр в заданном целом числе
Подсчитать количество цифр в заданном целом числе n

Определить количество цифр в целом числе, введенном пользователем
4)Написать программу которая определяет количество цифр в числе(целом)...

Составить программу, которая вычисляет произведение цифр в целом числе N
Составить программу, которая вычисляет произведение цифр в целом числе N

Написать функцию, которая возвращает количество цифр в целом числе
Помогите, что то я не могу понять задачи, даже не знаю с чего начать)))) 2....

42
-comrade-
357 / 358 / 167
Регистрация: 11.06.2010
Сообщений: 703
21.11.2011, 20:55 #2
http://www.cyberforum.ru/cpp-beginne...ml#post2042482
0
Chiko94
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 20:58  [ТС] #3
Цитата Сообщение от -comrade- Посмотреть сообщение
а это что?) мне подпрограмму нужно)
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:01 #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<stdio.h>
int Count(long a)
{
   return a ? 1 + Count(a/10) : 0;
}
 
int main( )
{
    long a;
    scanf("%ld", &a);
    printf("%d\n", a ? Count(a) : 1);
    return 0;
}
1
Chiko94
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:07  [ТС] #5
Цитата Сообщение от Thinker Посмотреть сообщение
return a ? 1 + Count(a/10) : 0;
а что это такое? между а и 1 (?) что означает? а :0 это финальное? и еще long a это что? просто мы не проходили его...можно его чем нить заменить?))) и спасибо за то что сделал)))
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:09 #6
Цитата Сообщение от Chiko94 Посмотреть сообщение
а что это такое? между а и 1 (?) что означает? а :0 это финальное? и еще long a это что? просто мы не проходили его...можно его чем нить заменить?))) и спасибо за то что сделал)))
Тернарный условный оператор (есть в Си, С++, С#, Java), удобный короче очень. long -целое 32-битное целое число. Если int 32-битный, то это тоже самое. Если int 16-битный, то эквивалентен short. Поэтому сразу long
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
21.11.2011, 21:09 #7
Chiko94, ну это аналог if else
0
Chiko94
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:10  [ТС] #8
и еще можешь плиз count на printf или scanf заменить просто мы этого не проходили и препод не примет)
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
21.11.2011, 21:11 #9
можно заменить так
C
1
2
3
4
if (a)
         return (1+count(a/10));
      else
        return 0;
0
Chiko94
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:11  [ТС] #10
а можете это виразить через if printf scanf else)) плииииз)
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
21.11.2011, 21:12 #11
Цитата Сообщение от Chiko94 Посмотреть сообщение
count
это не взаимозаменяемые вещи
0
Chiko94
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:13  [ТС] #12
Цитата Сообщение от go Посмотреть сообщение
можно заменить так
C
1
2
3
4
if (a)
         return (1+count(a/10));
      else
        return 0;
а count на что нить заменить можно...вроде printf )
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:13 #13
Не любите рекурсию, тогда вот итерация:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<iostream>
int Count(long a)
{
    int  k = 0;
    do{
       k++;
       a /= 10;
    }while(a);
    return k;
}
 
int main()
{
   long a;
   std::cin >> a;
   std::cout << Count(a);
   return 0;
}
0
Chiko94
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:15  [ТС] #14
Цитата Сообщение от go Посмотреть сообщение
это не взаимозаменяемые вещи
эх(( плохо)) парни если вам не сложно..плиз напишите эту прогу через scanf printf if else for .... через простые операторы , только без long,cout...=)

Добавлено через 51 секунду
Цитата Сообщение от Thinker Посмотреть сообщение
Не любите рекурсию, тогда вот итерация:
C++
1
2
3
4
5
6
7
8
9
int Count(long a)
{
    int  k = 0;
    do{
       k++;
       a /= 10;
    }while(a);
    return k;
}
вот за это спасибо)))) сейчас начнусь разбираться)) а это вся прога да?))
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
21.11.2011, 21:16 #15
Chiko94, count это не оператор!!!
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:17 #16
Цитата Сообщение от Chiko94 Посмотреть сообщение
вот за это спасибо)))) сейчас начнусь разбираться)) а это вся прога да?))
Выше посмотрите, там вся
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
21.11.2011, 21:18 #17

Не по теме:

Вы хотите сдать ее "как свою", так или разберитесь, или напишите сами



Добавлено через 30 секунд

Не по теме:

Thinker, автор видно функции первый раз видит

0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:20 #18
Цитата Сообщение от Chiko94 Посмотреть сообщение
эх(( плохо)) парни если вам не сложно..плиз напишите эту прогу через scanf printf if else for .... через простые операторы , только без long,cout...=)
Во измучили, вот вам на Си:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<stdio.h>
int Count(int a)
{
    int  k = 0;
    do{
       k++;
       a /= 10;
    }while(a);
    return k;
}
 
int main( )
{
    int a;
    scanf("%d", &a);
    printf("%d\n", Count(a));
    return 0;
}
Добавлено через 30 секунд
Цитата Сообщение от go Посмотреть сообщение

Не по теме:

Thinker, автор видно функции первый раз видит

Не по теме:

бывает

0
Chiko94
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:21  [ТС] #19
Цитата Сообщение от Thinker Посмотреть сообщение
int main()
{
* *long a;
* *std::cin >> a;
* *std::cout << Count(a);
* *return 0;
}
а можно здесь убрать или заменить long , std, cin, count плиииз)
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:22 #20
Цитата Сообщение от Chiko94 Посмотреть сообщение
а можно здесь убрать или заменить long , std, cin, count плиииз)
пост выше!!!
0
21.11.2011, 21:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2011, 21:22
Привет! Вот еще темы с решениями:

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

Написать функцию, которая возвращает количество цифр в целом числе, полученном в качестве аргумента
Кто знает как решить задачу, на С++: написать функцию, которая возвращает...

Проверка количества цифр в числе
Доброго времени суток) Возникла проблема с программой, помогите, пожалуйста...

Подсчет количества цифр в вещественном числе
Насколько я понял, сделать это можно лишь с переводом в строковый тип, а вот...


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

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

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