Как посчитать количество цифр в числе?
Как посчитать количество цифр в числе
i1:= 3284; i2:=214; i3:= 23473; i4:= 1; Как посчитать количество цифр в числе в i1 — 4 i2 -.
Как посчитать количество цифр в числе после запятой
есть число 3.45678 как посчитать числа после запятой т.е. 5
Как посчитать количество повторений каждой из цифр в числе N*N?
я очень плохо ориентируюсь на С++.Такой вопрос:можно числа переводить в строки?И если нет,то как.
Как посчитать количество цифр в числе типа Real
Допустим у меня есть два числа типа Real r1:= 32.3456 r2:= 1.63 Как в них посчитать и целую.
Сообщение от Reg__a
Сообщение от accept
Добавлено через 4 минуты
Сообщение от Semen-Semenich
Посчитать количество цифр в числе
Помогите не могу никак разобратся! нужно сщздать прогу. Пользователь вводит с клавиатуры число.
Посчитать количество цифр в числе
как посчитать количество цифр в числе?
Рекурсия: посчитать количество цифр в числе
помогите решить задачу с помощью рекурсии, надо посчитать количество элементов в числе.Я сделал.
Посчитать количество цифр 7 в каждом числе
здравствуйте, подскажите пожалуйста с задачей: дано 5 чисел. посчитать количество цифр 7 в каждом.
Как посчитать количество цифр в числах в разных базах?
Я работаю с числами в разных базах (база-10, база-8, база-16 и т. Д.). Я пытаюсь посчитать количество символов в каждом номере.
Я знаю о методе, основанном на логарифмах, но я сталкиваюсь с некоторыми проблемами.
Этот скрипт Python сообщает, что ему не удалось правильно рассчитать количество цифр в 3 969 числах из 1 000 000.
Я думаю, что метод, который использует логарифмы, может быть довольно медленным
Эта программа на C должна быть очень медленной (что, если у меня очень большое количество?). Он также не может иметь дело с числами в разных базах (например, base-16).
Не обман этого, поскольку там был ОП спрашивать только о базе-10
Правка . Конечно, я могу вычислить длину строки, но что меня больше всего интересует, так это возможность вычислить без согласования со строкой . Я хотел бы знать алгоритм, который мог бы помочь сделать это, зная только source-base и базу для преобразования в .
Edit2: source-base — это base-10 , а базой для преобразования в может быть любая другая база.
Как мы можем рассчитать количество цифр в числах в разных базах?
Если я знаю число в base-10, как рассчитать количество цифр в том же числе, преобразованном в base-16 (base-8 и т. Д.) без выполнения преобразования ?
Примечание : некоторые коды Python или C будут высоко оценены
3 ответа
Логарифмы не должны быть медленными. И вы можете легко вычислить логарифмы для любого основания по этой формуле: logBaseN(x)=logBaseA(x)/logBaseA(N) — вы можете использовать ln (Base e = 2.718 . ) или logBase10 или что-либо еще, что у вас есть. Так что вам не нужна программа, формуляр должен это сделать:
Где N — ваш номер, а base — база, в которой вы хотите этот номер.
Я не уверен, что понимаю ваш вопрос. Когда вы говорите, что ваше начальное число находится в базе b1, означает ли это, что вы представляете его в виде строки в базе b1? Может быть, вы хотите построить какую-нибудь таблицу, которая скажет вам, какое число в базе b1 соответствует b2, b2 ^ 2, b2 ^ 3, . а затем сравните ваше число с этими числами, чтобы увидеть, куда оно подходит.
В противном случае я бы использовал алгоритм, который вы упомянули, который может быть легко адаптирован к любой базе.
Ввод: ваше целое число x, основание b2, в котором вы хотите посчитать цифры.
Оба метода являются только линейными по n.
РЕДАКТИРОВАТЬ . Если вы хотите работать быстрее, вы можете реализовать это как бинарный поиск. Тогда вы можете получить O (log (n)).
Обратите внимание, что ваша NumToStr() функция в вашем коде Python неверна из-за непостоянства в вашей базе, она должна быть:
Обратите внимание, что проверка того, что эта функция возвращает правильный результат, обнаружила бы ошибку (например, используйте alpha=»0123456789″ ).
С помощью этого исправления мы получаем правильное количество цифр, используя данную формулу:
кроме для точных степеней базы ( base**0 , base**1 , base**2 и т. д.), где она ровно на единицу меньше, чем должна быть. Это можно исправить, немного изменив forumla:
Обратите внимание, что даже это, похоже, не работает для некоторых входов (например, при преобразовании из base-10 в base-10 неправильно указывается 3 цифры для 1000 и 6 цифр для 1000000). Это, кажется, связано с присущей неточностью поплавков, например:
Выводит 2 вместо ожидаемого 3 .
Что касается вашего упоминания о производительности, я не буду беспокоиться о проблемах производительности для такого тривиального кода, пока вы не выполните профилирование / сравнительный анализ, который показывает, что это проблема. Например, ваш «очень медленный» код на C займет не более 38 делений на 10 для 128-битного числа. Если вам нужна лучшая производительность, чем эта, вы столкнетесь с той же проблемой, что и любой тривиальный метод, упомянутый здесь. Самая быстрая вещь, о которой я могу подумать, — это пользовательская функция log() , использующая комбинацию таблицы поиска и линейной интерполяции, но вы должны быть осторожны с полученной точностью.
Функция карты Python | Подсчитать общее количество бит во всех числах от 1 до n
Учитывая положительное целое число n, подсчитайте общее количество установленных бит в двоичном представлении всех чисел от 1 до n.
У нас есть решение этой проблемы, пожалуйста, обратитесь к ссылке Количество установленных битов во всех числах от 1 до n ссылки. Мы можем решить эту проблему в python, используя функцию map () . Подход очень прост,
- Напишите функцию, которая сначала преобразует число в двоичное с использованием функции bin (num) и возвращает в ней количество установленных битов.
- Отобразите пользовательскую функцию в список чисел от 1 до n, и мы получим список отдельных счетчиков установленных битов в каждом номере.
- Суммируйте количество всех установленных битов.
# Функция для подсчета общего количества установленных бит во всех числах
# от 1 до n
Упражнение на Python: подсчет количества четных и нечетных чисел из ряда чисел
Напишите программу на Python для подсчета количества четных и нечетных чисел из серии чисел.
Наглядное представление четных чисел:
Наглядное представление нечетных чисел:
Пример решения:
Код Python:
Блок — схема:
Четные числа от 1 до 100:
Нечетные числа от 1 до 100:
Визуализируйте выполнение кода Python:
Следующий инструмент визуализирует, что компьютер делает шаг за шагом при выполнении указанной программы:
Редактор кода Python:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.