| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Работа с int / float: |
| Автор: intel 28.10.2007, 19:17 | ||
| Доброго времени суток у меня пара вопросов по работе с int / float: 1. есть ли функция для определения длины int-числа? 2. можно ли както "выбрать" определённый кусок из int'а? Пример:
Спасибо |
| Автор: under_sun 28.10.2007, 20:08 |
| 1,2 - нет Преобразуй число в строку, и no problem. |
| Автор: archimed7592 28.10.2007, 20:11 | ||
Аналогичными операциями деления и взятия остатка от деления(%) делаешь любую выборку из числа. Хоть 1 3 5-ое. Добавлено через 1 минуту и 6 секунд Тоже вариант... Думаю, не менее медленный, чем ручная обработка. |
| Автор: bsa 29.10.2007, 14:43 | ||||
Думаю, что если воспользоваться функцией log10, можно получить тоже самое, только быстрей:
Кстати, получить часть числа можно. Но лучше задавать разряды от конца - не придется вычислять количество десятичных разрядов в числе. В этом случае ответ на второй вопрос будет выглядеть так:
|
| Автор: bsa 29.10.2007, 15:31 | ||
Сорри. Не обратил внимание на то, что это на C++. |
| Автор: bns 29.10.2007, 16:47 | ||
Я бы не спешил говорить что этот код быстрее |
| Автор: bsa 29.10.2007, 20:34 | ||||
А ты проверь. Естественно, это стоит делать не на BC++ 3.1 с выключенной поддержкой сопроцессора, а на чем-нибудь современном. |
| Автор: Ln78 29.10.2007, 23:02 |
| bsa, так относительно недавно уже проверяли. В http://forum.vingrad.ru/index.php?showtopic=150796&view=findpost&p=1130554 |