여기서는 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