Как посчитать количество цифр в числе?
Для каждого пункта напишите функцию, возвращающую ответ.
0) Дано число, посчитайте количество цифр в числе. Например, 123456 -> 6
Подсказка: обратите внимание на то, что деление целочисленного значения
на целочисленное значение является целочисленным, т.е. в результате
отбрасывается дробная часть. Это должно помочь вам.
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Посчитать количество определенных цифр в числе
Есть число, ну например 152535. Надо посчитать сколько в нём 5. Циклы, count, другие функции и.
Как посчитать количество цифр в числе
i1:= 3284; i2:=214; i3:= 23473; i4:= 1; Как посчитать количество цифр в числе в i1 — 4 i2 -.

Как посчитать количество цифр в числе ?
Как посчитать количество цифр в числе ?
Как посчитать количество повторений каждой из цифр в числе N*N?
я очень плохо ориентируюсь на С++.Такой вопрос:можно числа переводить в строки?И если нет,то как.
Регистрация: 02.06.2013
Сообщений: 47
Клево, а проблема-то в чем? =)
Регистрация: 05.08.2013
Сообщений: 20
1 2 3
n = input() #введённое число - строка print(len(n))
Регистрация: 17.11.2009
Сообщений: 36
1 2 3 4
#python2.7 >>> a=12345 >>> len(str(a)) 5
Регистрация: 23.11.2013
Сообщений: 2
1 2 3 4 5 6 7
n = input('Введите число: ') summa = 0 while n>0: i = n%10 n = n/10 summa = summa + i print 'Сумма чисел равна =', summa
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
Сообщение от Reg__a 
вот так вот)
в принципе, верно, но не та концовка
Регистрация: 21.04.2019
Сообщений: 1
n = "00000" len(str(n))
4973 / 3209 / 1125
Регистрация: 21.03.2016
Сообщений: 7,939
Сообщение от accept 
Сообщение от Reg__a
вот так вот)
в принципе, верно, но не та концовка
в принципе строки не делятся на числа но ход мыслей правильный
1 2 3 4 5 6
n = int(input()) s= 0 while n : s += 1 n //= 10 print (s)
![]()
1354 / 651 / 207
Регистрация: 23.03.2014
Сообщений: 3,057
1 2 3 4 5 6 7 8 9 10 11 12 13
def coonter(n): n = abs(n) count = 1 n //= 10 while n > 0: n //= 10 count += 1 print(count) if __name__ == '__main__': n = int(input()) coonter(n)
Регистрация: 13.04.2021
Сообщений: 1
1 2 3 4 5 6 7 8 9 10 11
n = int(input()) sum = 0 while n > 0: i = n % 10 n //= 10 sum += i print(sum)
![]()
1354 / 651 / 207
Регистрация: 23.03.2014
Сообщений: 3,057
1 2 3 4 5 6 7 8 9 10 11
n = int(input()) sum = 0 while n > 0: i = n % 10 n //= 10 sum += 1 #количество это +1 print(sum)
Регистрация: 05.10.2021
Сообщений: 35
Добавлено через 4 минуты
Сообщение от Semen-Semenich 
в принципе строки не делятся на числа но ход мыслей правильный
1 2 3 4 5 6
n = int(input()) s= 0 while n : s += 1 n //= 10 print (s)
Здравствуйте, Семён. Мне понравилось то, как вы сделали. Можете пожалуйста объяснить как новичку что и зачем вы здесь делали?) Буду очень благодарен за ответ!
Регистрация: 01.09.2022
Сообщений: 6
А если n == 0 то количество цифр должно быть равно 1
634 / 474 / 179
Регистрация: 28.05.2012
Сообщений: 1,411
Сообщение от senkky 
А если n == 0
n = abs(int(input())) print(len(str(n)))
5161 / 2636 / 545
Регистрация: 07.11.2019
Сообщений: 4,351
Потестируйте ваши решения на таких числах: 7+3j, 5e-7, 100_000, 3.62
Я бы использовал что-то такое:
print(sum(1 for i in input() if i.isdecimal()))
или isdigit, isnumeric.
Регистрация: 11.06.2022
Сообщений: 38
1 2 3 4 5 6 7
import re try: digit = input("Введите число: ") numbers = re.findall("\d", digit) print(f"Цифр в числе: ", end='') except Exception: pass
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Как посчитать количество цифр в числе после запятой
есть число 3.45678 как посчитать числа после запятой т.е. 5
Как посчитать количество цифр в числе типа Real
Допустим у меня есть два числа типа Real r1:= 32.3456 r2:= 1.63 Как в них посчитать и целую.

Посчитать количество цифр в числе
как посчитать количество цифр в числе?

Посчитать количество цифр в числе
Помогите не могу никак разобратся! нужно сщздать прогу. Пользователь вводит с клавиатуры число.
Посчитать количество цифр в числе ?
есть число, его задает пользователь в консоли допустим 1238487805 в данном числе максимальная.
Рекурсия: посчитать количество цифр в числе
помогите решить задачу с помощью рекурсии, надо посчитать количество элементов в числе.Я сделал.
Посчитать количество цифр в десятичном числе
Написать программу, подсчитывающую количество различных цифр в десятичной записи натурального числа.
Как посчитать количество цифр в числе (число начинается на ноль)
Просто потому что если читать не строку, а число — то введете вы 00094 или 94 — в вашем x будет одно и то же число.
Отслеживать
ответ дан 12 дек 2019 в 14:36
218k 15 15 золотых знаков 117 117 серебряных знаков 229 229 бронзовых знаков
А как тогда после из него «взять» первую, вторую и последующие цифры? Мне вот например нужно чтобы цифры на парных местах додавались, на непарных перемножались и этого всего найти суму.
12 дек 2019 в 14:42
x[0] — первая цифра (как символ! чтобы получить ее числовое значение, нужно вычитать символ ноля — x[0]-‘0’ ), x[1] — вторая и так далее.
12 дек 2019 в 15:02
Как я понимаю это массив, но как вычитать символ ноля я так и не понял.
12 дек 2019 в 15:34
Я же написал: x[0]-‘0’ . Просто перенести в свой код можете? Выделить, Ctrl-C, Ctrl-V?
12 дек 2019 в 15:37
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Программа для нахождения количества цифр в числе
Программа принимает число и выводит количество цифр в нем.
Решение задачи
- Берем значение целого числа и записываем его в переменную.
- Используем цикл while и при помощи оператора целочисленного деления «уничтожаем» каждую цифру числа начиная с последней, а при каждой итерации цикла специально созданную переменную (так называемый счетчик цикла) увеличиваем на единицу. После того как введенное в начале число станет равным 0, цикл прекратит свою работу.
- Выводим значение этого счетчика на экран.
- Конец.
Исходный код
Ниже дан исходный код для подсчета количества цифр в данном числе. Результаты работы программы также даны ниже.
n = int(input("Введите число:")) count = 0 while(n > 0): count = count + 1 n = n // 10 print("Количество цифр равно:", count)
Объяснение работы программы
- Записываем введенное пользователем число в переменную n .
- Задаем переменную count и инициируем ее значением 0.
- Используем цикл while и при помощи оператора целочисленного деления «уничтожаем» каждую цифру числа начиная с конца.
- При каждой итерации цикла переменная count увеличивается на 1.
- Как только цифры в числе заканчиваются и число n становится равным 0, цикл прекращает свою работу.
- Выводим переменную count на экран.
Результаты работы программы
Пример 1: Введите число:123 Количество цифр равно: 3 Пример 2: Введите число:1892 Количество цифр равно: 4
Примечание переводчика
Надо заметить, что опять эту задачу можно решить намного короче, если использовать методы строк.
print("Количество цифр равно:", len(input("Введите число:")))
Здесь введенное число принимается как строка и мы просто выводим ее длину.
Как правильно найти количество цифр заданного целого числа?
Мой код проходит по всем тестам на 90% , не проходит один тест. Проблему почему не проходит на все 100 — не нашёл.. Условие: Найти количество цифр заданного целого числа number . Пример: вводим число 37 должно вывести число 2 . Код:
#include int main() < long long int number = 0; int result = 0; std::cin >> number; while(number != 0) < number /= 10; result++; >std::cout
Отслеживать
47.5k 17 17 золотых знаков 56 56 серебряных знаков 99 99 бронзовых знаков
задан 4 мар 2022 в 18:35
user482879 user482879
Подумайте, что произойдет, если заданное число не помещается в long long int.
4 мар 2022 в 18:59
А что будет если ввести ноль?
– user361068
4 мар 2022 в 19:14
коду не важно число отрицательное или нет. Просто напишите один цикл: while(number != 0) < number /= 10; ++result; >или можно сразу вывести результат: cout << static_cast
4 мар 2022 в 20:40
@ARHovsepyan, спасибо, но всеравно 90%
– user482879
5 мар 2022 в 9:48
@EOF, Если ввести 0, будет 0.
– user482879
5 мар 2022 в 9:48
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
Почти наверняка в том единственном тесте вводится 0 .
Делать условие именно на то, что юзер введёт цифру 0, и нужно вывести 1. Както колхозно, как можно реализовать без етого?
Делать отдельно условие нормально, но если есть желание сделать без условия, то можно и без него:
cin >> number; int result = 1; while (number /= 10) ++result; cout
Отслеживать
ответ дан 5 мар 2022 в 10:17
122k 24 24 золотых знака 124 124 серебряных знака 297 297 бронзовых знаков
Делать условие именно на то, что юзер введёт цифру 0, и нужно вывести 1. Както колхозно, как можно реализовать без етого?
– user482879
5 мар 2022 в 10:21
@Denys, дополнил.
5 мар 2022 в 10:23
Да, спасибо большое.
– user482879
5 мар 2022 в 10:28
Если вводите с консоли, то и не нужно рассматривать последовательность цифр как число. Можно просто читать и "выбрасывать" символы_цифры, с увеличением счетчика:
int res<>; while (isdigit(getchar())) ++res; printf("%d", res);
Вариантов решения много. Задание должно четко выразить что критично и каким образом задается объект. Потому что "задано число" наталкивает написать функцию с целочисленным аргументом, а пример рождает вопрос "откуда вводится?".