Написать функцию которая определяет количество разрядов введенного целого числа

от admin

3 способа определить количество разрядов в числе в Python

Статьи

Введение

В ходе статьи рассмотрим три вариации кода для определения количества разрядов в ведённом пользователем числе на языке программирования Python.

Длинный способ с циклом while

Дадим пользователю возможность ввести число:

Если было введено отрицательное число, нужно его сделать положительным. Для этого добавим его в модуль методом abs():

Добавим переменную count равную нулю:

Создадим цикл while, который не закончится, пока n > 0. В цикле будем убирать последнюю цифру в переменной n, а к count прибавлять единицу:

Осталось вывести результат:

Короткий способ циклом for

Обычно подобным не занимаются при помощи цикла for, но почему бы и нет. Как и в предыдущем способе даём пользователю возможность ввода числа, и добавляем его в модуль. Также создаём переменную count равную нулю:

Создадим цикл for, в котором пройдёмся по количеству символов в переменной n. Внутри цикла прибавляем к count единицу:

Выведем результат в консоль:

Самый быстрый способ

Как и в предыдущих способах даём пользователю возможность ввода числа, и добавляем его в модуль:

Теперь в переменную count сохраним длину значения преобразованного в строковый тип данных в переменной n:

Заключение

В ходе статьи мы с Вами разобрали целых 3 способа определить количество разрядов в числе в Python. Надеюсь Вам понравилась статья, желаю удачи и успехов! ��

Напишите функцию, которая определяет количество цифр переданного ей числа в паскале

function F1(a: integer): string; // описание функции.
begin
Result := inttostr(a); // преобразуем переданное в качестве параметра число в строку.
writeln(‘Количество цифр в числе ‘,a,’ равно: ‘, length(Result)); // вывод на экран строки.
end;

var // начало основной программы.
b: integer; // объявление переменной целочисленного типа.
begin
writeln(‘Введите целое число:’); // вывод на экран строки.
readln(b); // считываем введенное с клавиатуры число.
F1(b); // вызываем функцию и передаем в качестве параметра введенное число.
end.

Читать:
Почему тратится много оперативной памяти

[C++] Разбиение числа на разряды и порязрядный вывод через пробел

P.S. Решение на С++. Используя инструкцию if. И функции printf(), scanf().

iskander-k
  • 14 Авг 2010
  • #2
Alex1983
  • 14 Авг 2010
  • #3
AlexTNT
Активный пользователь
  • 14 Авг 2010
  • #4
Alex1983
  • 14 Авг 2010
  • #5
AlexTNT
Активный пользователь
  • 15 Авг 2010
  • #6
Drongo
  • 15 Авг 2010
  • #7

Число нужно, а не строка.

Покопавшись в своих решениях, нашёл, эту задачу из книги Дейтелов, и как я её тогда решил, прочитав только первую и вторую главу.

Программа просит ввести четырёхзначное число и разбивает на числа через пробел, если вводить меньше четырёх или больше четырёх разрядов, выводимое решение будет неверно. Но это было решено уже позже, понадобились знания создания динамических массивов и вроде бы всё. Если интересно, поищу и приведу пример уже в понедельник.

Как правильно найти количество цифр заданного целого числа?

Мой код проходит по всем тестам на 90% , не проходит один тест. Проблему почему не проходит на все 100 — не нашёл..

Условие: Найти количество цифр заданного целого числа number .

Пример: вводим число 37 должно вывести число 2 .

insolor's user avatar

Почти наверняка в том единственном тесте вводится 0 .

Делать условие именно на то, что юзер введёт цифру 0, и нужно вывести 1. Както колхозно, как можно реализовать без етого?

Делать отдельно условие нормально, но если есть желание сделать без условия, то можно и без него:

Если вводите с консоли, то и не нужно рассматривать последовательность цифр как число. Можно просто читать и "выбрасывать" символы_цифры, с увеличением счетчика:

Вариантов решения много. Задание должно четко выразить что критично и каким образом задается объект. Потому что "задано число" наталкивает написать функцию с целочисленным аргументом, а пример рождает вопрос "откуда вводится?".

Похожие статьи