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

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

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

Студворк — интернет-сервис помощи студентам
Помогите плиз)

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


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

заранее спасибо)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.11.2011, 20:48
Ответы с готовыми решениями:

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

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

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

42
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:22  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Thinker Посмотреть сообщение
Во измучили, вот вам на Си:

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 секунд


Не по теме:

бывает:)


во)) класс))) ну я просто в раньше учил бейсик а потом резко перешли на visual studia c++((
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:24
Цитата Сообщение от Chiko94 Посмотреть сообщение
во)) класс)))

Не по теме:

неужели понравилось :cofee:

0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
21.11.2011, 21:26
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
int main ()
{
    long a,count=1;
    
         scanf ("%ld",&a);
 
    while ((a/=10)>=1)
        count++;
 
    printf ("\n%ld",count);
 
    fflush (stdin);
        getchar ();
 
        return 0;
}
0
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:34  [ТС]
Цитата Сообщение от Thinker Посмотреть сообщение
неужели понравилось
и спросить кое что можно?))

printf ("%d\n", Count(a)); - здесь просто а нельзя записать?)

int Count(int a) - count это просто имя? если имя то можно и просто переменную поставить зачем сразу слово?)

а почему использовали do .. while а не просто while?))

a /= 10; а здесь можно написать a=a/10

и последний вопрос .. зачем придумали подпрограмму ? почему это нельзя сделать просто в программе))))

Добавлено через 3 минуты
Цитата Сообщение от go Посмотреть сообщение
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
int main ()
{
    long a,count=1;
    
         scanf ("%ld",&a);
 
    while ((a/=10)>=1)
        count++;
 
    printf ("\n%ld",count);
 
    fflush (stdin);
        getchar ();
 
        return 0;
}
сложновато(
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
21.11.2011, 21:39
Цитата Сообщение от Chiko94 Посмотреть сообщение
сложновато(

самый оптимальный вариант, это первое решение Thinker с рекурсией, я вам предложил, как вы и хотели, без функций вообще
куда уже проще
1
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:53  [ТС]
спасибо))) но мне нужно подпрограмму а тут не под программа

Добавлено через 9 минут
Цитата Сообщение от Chiko94 Посмотреть сообщение
#include <stdio.h>
int main ()
{
* * * * long a,count=1;
scanf ("%ld",&a);
while ((a/=10)>=1)
* * * * * * * * count++;
printf ("\n%ld",count);
fflush (stdin);
* * * * getchar ();
return 0;
}

слушай а ты ansi c не знаешь?)
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:54
Цитата Сообщение от Chiko94 Посмотреть сообщение
слушай а ты ansi c не знаешь?)
Это стандарт языка Си (самый первый)
0
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 21:57  [ТС]
Цитата Сообщение от Thinker Посмотреть сообщение
Это стандарт языка Си (самый первый)
значит вы его знаете?) и он легкий)))

напишите плиз прогу на ansi c))
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 21:58
Цитата Сообщение от Chiko94 Посмотреть сообщение
значит вы его знаете?) и он легкий)))

напишите плиз прогу на ansi c))
Мы с go именно это и сделали)))

http://ru.wikipedia.org/wiki/ANSI_C
0
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 22:02  [ТС]
Цитата Сообщение от Thinker Посмотреть сообщение
Мы с go именно это и сделали)))

http://ru.wikipedia.org/wiki/ANSI_C
хм))) у go просто не подпрограмма)) а у Thinker вроде есть пару не понятных фраз, функций, операторов ну что то такое))
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 22:07
Цитата Сообщение от Chiko94 Посмотреть сообщение
хм))) у go просто не подпрограмма)) а у Thinker вроде есть пару не понятных фраз, функций, операторов ну что то такое))
У go полноценная программа. Если вам нужна подпрограмма, то порыскайте по постам этого топика и все функции Count() - это и есть подпрограмма!
1
1 / 1 / 0
Регистрация: 21.11.2011
Сообщений: 23
21.11.2011, 22:08  [ТС]
2 сообщение, прога вроде Thinker, ответьте плиз))

printf ("%d\n", Count(a)); - здесь просто а нельзя записать?)

int Count(int a) - count это просто имя? если имя то можно и просто переменную поставить зачем сразу слово?)

а почему использовали do .. while а не просто while?))

a /= 10; а здесь можно написать a=a/10

и последний вопрос .. зачем придумали подпрограмму ? почему это нельзя сделать просто в программе))))
1
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 22:13
Цитата Сообщение от Chiko94 Посмотреть сообщение
printf ("%d\n", Count(a)); - здесь просто а нельзя записать?)

int Count(int a) - count это просто имя? если имя то можно и просто переменную поставить зачем сразу слово?)

а почему использовали do .. while а не просто while?))

a /= 10; а здесь можно написать a=a/10

и последний вопрос .. зачем придумали подпрограмму ? почему это нельзя сделать просто в программе))))
можно сделать так
count = Count(a);
printf ("%d\n", count);

do-while чтобы учесть число 0, в котором одна цифра

можно написать a = a/10;

Чтобы облегчить жизнь (а кому то наоборот, усложнить)))
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
21.11.2011, 22:22
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
#include <stdio.h>
 
long count (long a)
{
    int count_ =1 ;
 
    while (a/=10)
        count_++;
 
    return count_;
}
 
int main(int argc, char* argv[])
 
 
{
        long a;
        
         scanf ("%ld",&a);
 
        printf ("\n%ld",count(a));
 
        fflush (stdin);
        getchar ();
 
        return 0;
}
1
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.11.2011, 22:25
Цитата Сообщение от go Посмотреть сообщение
C
1
2
3
4
5
6
7
8
9
long count (long a)
{
    int count_ =1 ;
 
    while (a/=10)
        count_++;
 
    return count_;
}
Вот, классно!!!
0
7 / 7 / 1
Регистрация: 21.03.2010
Сообщений: 397
22.11.2011, 02:37
посмотри это:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
main()
{
 long int a,x,p;
 clrscr();
 cout<<"-> "; cin>>a;
 x = abs(a);
 p = 0;
 
 do
   {
    x = x/10;
    p++;
   }
   while(x!=0);
 
 cout<<endl<<p;
 return 0;
}
возможно нечто не то, так что извините)))

Добавлено через 4 минуты
или создать переменную типа стринг (это и будет введенное число) и переменную типа стринг, которая возвращает длину строки(length))
0
44 / 44 / 6
Регистрация: 16.11.2010
Сообщений: 110
22.11.2011, 10:07
А может так:

C++
1
2
3
4
double num(double n)
{
return Math::Log10(n)+1;
}
0
7 / 7 / 1
Регистрация: 21.03.2010
Сообщений: 397
22.11.2011, 21:43
Цитата Сообщение от mr.n-drey Посмотреть сообщение
double num(double n)
{
return Math::Log10(n)+1;
}
подробнее, если можна
0
44 / 44 / 6
Регистрация: 16.11.2010
Сообщений: 110
22.11.2011, 22:37
А что подробней то??? Просто передаёшь этой функции число, количество цифр в котором нужно узнать и округляешь полученный результат...

Добавлено через 17 минут
Ага понял))) в консольном варианте просто такую функцию вызывать
C++
1
2
3
4
5
#include <math.h>
int num(int n)
{
    return round(log10(n)+1);
}
0
1406 / 648 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
22.11.2011, 23:39
mr.n-drey, контр-тест: 32 - выводит 3.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.11.2011, 23:39

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы ## О чём эта статья В процессе построения ОДУ-модели (система дифференциальных. . .
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет) Содержание проекта Симуляция вековой (50 лет) экологической сукцессии в почве леса Основные участники: АМ-гриб, ЭКМ-гриб,. . .
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru