Форум программистов, компьютерный форум CyberForum.ru

Как узнать длину числа? - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 179, средняя оценка - 4.66
Psixodelik
 Аватар для Psixodelik
40 / 39 / 2
Регистрация: 27.11.2009
Сообщений: 100
02.05.2010, 11:46     Как узнать длину числа? #1
Всем привет Интересует такой вопрос: как можно узнать длину числа(колличество цифр в нём)? Т.е. записать длину в отдельную переменную. К примеру a = 124; и как скажем в переменную buf занести тогда число 3 и т.д.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2010, 11:46     Как узнать длину числа?
Посмотрите здесь:

C++ Как узнать знак числа?
C++ Как узнать в програме сколько раз числа меняются с чётного на нечётное?
Очень большие числа: узнать, есть ли остаток от деления одного числа на другое C++
C++ Как узнать длину массива
C++ Узнать длину строки и длину каждого слова
Как узнать длину массива? C++
Как узнать длину строки, содержащей кириллицу? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Darky
Быдлокодер
 Аватар для Darky
507 / 294 / 45
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
03.05.2010, 16:01     Как узнать длину числа? #41
CyBOSSeR,

Не по теме:

Прошу прощения, товарищ, на чем пишете? Билдер и Борланд не захотели std::generate

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2295 / 1665 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
03.05.2010, 17:37     Как узнать длину числа? #42

Не по теме:

Darky, MSVS 2008. Проверь, подключен ли <algorithm>. Если да, то дело скорее вего в Builder

.
mirso
524 / 342 / 17
Регистрация: 05.04.2009
Сообщений: 709
03.05.2010, 17:59     Как узнать длину числа? #43
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Darky Посмотреть сообщение
Билдер и Борланд не захотели std::generate
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <algorithm>
#include <vector>
#include <math.h>
#include <time.h>
size_t f( int x)
{
    return log10(x)+1;
}
int main()//=========================================================
{
    std::srand( std::time(0) );
    std::vector<int> v(100);
 
    std::generate(v.begin(), v.end(), std::rand);
 
    for (size_t i = 0; i < v.size(); ++i)
    std::cout << v.at(i) << " | " << f(v.at(i)) << std::endl;
 
    return 0;
}//==================================================================
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9383 / 5433 / 916
Регистрация: 25.07.2009
Сообщений: 10,428
03.05.2010, 18:17     Как узнать длину числа? #44
mirso, при числах < 1 забавные результаты выдаёт, а вообще спасибо, интересно...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.05.2010, 21:30     Как узнать длину числа?
Еще ссылки по теме:

C++ Как узнать длину указателя (в байтах)?
C++ Как узнать длину строки TCHAR?
C++ Как в теле функции узнать длину передаваемого ей массива?
Узнать длину границы C++
Узнать длину строкового массива C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
mirso
524 / 342 / 17
Регистрация: 05.04.2009
Сообщений: 709
03.05.2010, 21:30     Как узнать длину числа? #45
Цитата Сообщение от easybudda Посмотреть сообщение
а вообще спасибо, интересно...
Пожалуйста!

Цитата Сообщение от easybudda Посмотреть сообщение
при числах < 1 забавные результаты выдаёт
easybudda, а так?
C++
1
2
3
4
5
    int a = -1, b = -22, c = -333;
    std::cout << 0 << " | " << f( abs(0) ) << std::endl;
    std::cout << a << " | " << f( abs(a) ) << std::endl;
    std::cout << b << " | " << f( abs(b) ) << std::endl;
    std::cout << c << " | " << f( abs(c) ) << std::endl;
Цитата Сообщение от Psixodelik Посмотреть сообщение
как можно узнать длину числа(колличество цифр в нём)?
Ноль - это цифра?!
Yandex
Объявления
03.05.2010, 21:30     Как узнать длину числа?
Ответ Создать тему
Опции темы

Текущее время: 06:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru