Gremlin92
@Gremlin92
Целеустремленный

Как узнать у long long числа количество цифр?

вот мой код для int частично решается задача аналогично
#include <iostream>
#include <cstring>
int main()
{
int num=4000000;
char*word = new char[25];
sprintf(word,"%d",num);
std::cout « strlen(word);
}
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
Gremlin92
@Gremlin92 Автор вопроса
Целеустремленный
Вот ответ
#include <iostream>
#include <cstring>

int main()
{
    long long a = -1000000000000000000;
    long long b = 1000000000000000000-1;
    std::string stra=std::to_string(labs(a));
    std::cout<<stra.size()<<std::endl;
    std::string strb=std::to_string(b);
    std::cout<<strb.size()<<std::endl;
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
@Griglapidus
int numLen(long long num) {
  double dNum = num;
  return dNum ? std::log10(dNum) + 1 : 0;
}
Ответ написан
@DimaIs
int numLen(long long num) {
    int numCount = !num;
    while (num) {
        num /= 10;
        numCount++;
    }
    return numCount
}
Ответ написан
@mayton2019
Ent. Software engineer. Oracle. SQL. BigData.
Haskell-style.
int numLen(long long num) {
  return numLen(num, 1, 10);
}

int numLen(long long num,int cnt,long long threashold) {
  return 0 + num < threashold ? cnt : numLen(num, cnt + 1, threashold * 10);
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы