Программа которая считает количество цифр в числе

В этой статье мы разберем два способа посчитать, сколько цифр в числе. Первый способ предполагает использование целочисленного деления в цикле while. Второй – применение встроенных функций Python и преобразование числа в строку.

Считаем количество цифр в числе при помощи цикла while

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

Вот алгоритм этого метода:

  1. Получаем от пользователя число и записываем его в переменную
  2. Создаем переменную-счетчик и инициализируем ее значением 0
  3. При помощи цикла while удаляем крайнюю правую цифру (123 превращается в 12, потом в 1 и потом в 0)
  4. При каждой итерации цикла увеличиваем значение счетчика на 1 и делаем это, пока исходное число не будет равно 0. В конечном итоге в переменной-счетчике будет содержаться значение, соответствующее количеству цифр в числе
  5. Выводим полученное значение в консоль

count = 0 number = int(input(«Enter a number «)) while (number > 0): number = number // 10 count = count + 1 print(«Total number of digits: «, count) # Результат: # Enter a number 155 # Total number of digits: 3

  1. Данный код полностью идентичен алгоритму, который мы привели выше. count — это переменная-счетчик, используемая для хранения общего количества цифр в числе. Она инициализируется в начале нулем.
  2. Для ввода числа мы используем метод input() . Данный метод возвращает строку, поэтому мы оборачиваем его в метод int() , который преобразует ее в целое число. Оно сохраняется в переменную number .
  3. Цикл while будет выполняться до тех пор, пока значение переменной number больше нуля.
  4. В теле цикла мы производим целочисленное деление числа, которое хранится в переменной number, на 10. И далее сохраняем в эту переменную новое число, полученное в результате такого деления. Если значение переменной было равно 123, то после целочисленного деления на 10 оно станет равно 12. Это полностью эквивалентно удалению крайней правой цифры числа.
  5. После этого мы увеличиваем значение счетчика (переменная count ) на 1. В конце концов исходное число в переменной number станет равно 0 и цикл прекратит свою работу.
  6. Выводим значение переменной count в консоль.
Читайте также:
Программа где делают оружие

Считаем, сколько цифр в числе, преобразовав его в строку

Вместо использования цикла while мы можем напрямую преобразовать целое число в строку и получить длину этой строки. В Python получить длину строки легко с помощью встроенного метода len() . Для преобразования числа в строку мы можем использовать метод str() .

Задания по JavaScript 02 | Посчитать количество цифр при вводе нуля

Встроенная функция abs() используется для получения абсолютного значения числа, то есть наша программа будет обрабатывать и тот случай, когда число будет отрицательным.

Допустим, наше входное значение равно -123. Функция abs() преобразует его в 123, функция str() конвертирует 123 в строку. После этого функция len() возвращает длину строки, то есть значение 3.

Нахождение кол-ва цифр в числе С++

Код программы на Python:

count = 0 number = int(input(«Enter a number «)) print(«Total number of digits: «, len(str(abs(number)))) # Результат: # Enter a number 123 # Total number of digits: 3

Примечание редакции: возможно, вас также заинтересует статья “Как разбить число на цифры в Python”.

Источник: pythonturbo.ru

Количество цифр

Время от времени перед программистом стает задача нахождения количества цифр в числе. Есть много способов решения этой задачи. В статье мы рассмотрим наиболее популярные из них.

Длина строки

Это очень простой вариант определения количества цифр, заключается в переводе числа в строковое представление с последующим определением длины строки.

public int CountDigitByString(int n) < return Math.Abs(n).ToString().Length; >

Такой метод компактный и интуитивно понятный, однако он сильно проигрывает в быстродействии другим вариантам.

Десятичный логарифм

Использование десятичного логарифма для определения количества цифр в числе, позволяет производить вычисление за линейное время.

public int CountDigitsByLog10(int n) < return (n == 0) ? 1 : (int)Math.Log10(Math.Abs(n)) + 1; >

Читайте также:
Как удалять программы в os x

Сравнение

Самый быстрый из приведенных методов.

private static readonly int[] Numbers = new [] < 10, 100, 1000, 10000, 100000, 1000000, 10000000, 100000000, 1000000000 >; public int CountDigitsByCompare(int n) < n = Math.Abs(n); for (var i = 0; i < Numbers.Length; i++) < if (n < Numbers[i]) < return i + 1; > > return 10; >

Деление нацело

С использованием цикла

public int CountDigitsByDiv(int n) < var count = (n == 0) ? 1 : 0; while (n != 0) < n /= 10; count++; > return count; >

Рекурсивно

public int CountDigitsByDivRecursive(int n) < return (n 9) ? 1 : CountDigitsByDivRecursive(n / 10) + 1; >

Разбивка числа на отдельные цифры

Разбив число на отдельные цифры, мы получаем возможность нахождения:

  • количества цифр;
  • количества четных и нечетных;
  • количества различных(уникальных) цифр числа;
  • суммы цифр числа.

public Listint> IntToDigit(int n) < n = Math.Abs(n); var digits = new Listint>(); while (n > 0) < int digit = n % 10; n /= 10; digits.Add(digit); > return digits; >

Количество четных

public int EvenCount(int n) < var digits = IntToDigit(n); var count = 0; foreach (var d in digits) < if (d % 2 == 0) < count++; >> return count; > //сокращенная форма записи с использованием Linq public int EvenCountLinq(int n) < return IntToDigit(n).Count(x => x % 2 == 0); >

Количество нечетных

public int OddCount(int n) < var digits = IntToDigit(n); var count = 0; foreach (var d in digits) < if (d % 2 != 0) < count++; >> return count; > public int OddCountLinq(int n) < return IntToDigit(n).Count(x => x % 2 != 0); >

Количество различных цифр в числе

public int CountUniqueDigits(int n) < var a = new int[9]; foreach (var d in IntToDigit(n)) < a[d]++; >var countUnique = 0; foreach (var x in a) < if (x > 0) < countUnique++; >> return countUnique; >

Читайте также:
Программа которая определяет песню по словам

Сумма цифр числа

public int SumDigits(int n) < var sum = 0; foreach (var d in IntToDigit(n)) < sum += d; >return sum; > //использование Linq сокращает запись public int SumDigitsLinq(int n) < return IntToDigit(n).Sum(); >

Источник: programm.top

Найти количество цифр в числе в Python

Найти количество цифр в числе в Python

  1. Найдите количество цифр внутри числа с помощью функции math.log10() в Python
  2. Найдите количество цифр внутри числа с помощью функции len() в Python

В этом руководстве будут представлены методы подсчета количества цифр внутри числа в Python.

Найдите количество цифр внутри числа с помощью функции math.log10() в Python

110 Christliche Zitate zum Thema Sc.

Please enable JavaScript

Функция math.log10() внутри модуля math Python используется для поиска журнала по основанию 10 для любого указанного числа. Поскольку целые числа также находятся в базе 10, мы можем получить количество цифр внутри указанного целого числа с помощью этого метода.

Следующий фрагмент кода показывает нам, как найти количество цифр внутри числа с помощью функции math.log10() .

import math n = -10 if n > 0: digits = int(math.log10(n))+1 elif n == 0: digits = 1 elif n 0: digits = int(math.

log10(-n))+2 print(digits)

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru