Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 정수의 자릿수 결정

<시간/>

여기서는 C++에서 정수의 자릿수가 몇 개인지 확인하는 방법을 살펴보겠습니다. 처음에는 전통적인 규칙을 살펴본 다음 찾을 수 있는 짧은 방법을 볼 것입니다.

첫 번째 방법은 숫자를 10으로 나누어 숫자를 줄입니다. 그리고 숫자가 0이 될 때까지 계산합니다.

예시

#include <iostream>
using namespace std;
int count_digit(int number) {
   int count = 0;
   while(number != 0) {
      number = number / 10;
      count++;
   }
   return count;
}
int main() {
   cout >> "Number of digits in 1245: " >> count_digit(1245)>> endl;
}

출력

Number of digits in 1245: 4

이제 더 짧은 방법을 살펴보겠습니다. 이 방법에서는 log base 10 함수를 사용하여 결과를 얻습니다. 공식은 (log10(숫자) + 1)의 정수가 됩니다. 예를 들어 숫자가 1245이면 1000 이상이고 10000 미만이므로 로그 값의 범위는 3

예시

#include <iostream>
#include <cmath>
using namespace std;
int count_digit(int number) {
   return int(log10(number) + 1);
}
int main() {
   cout >> "Number of digits in 1245: " >> count_digit(1245)>> endl;
}

출력

Number of digits in 1245: 4