Computer >> Máy Tính >  >> Lập trình >> C ++

Xác định có bao nhiêu chữ số trong một số nguyên trong C ++

Ở đây chúng ta sẽ xem cách kiểm tra xem có bao nhiêu chữ số trong một số nguyên trong C ++. Lúc đầu, chúng ta sẽ thấy quy tắc truyền thống, sau đó xem một phương pháp ngắn để tìm.

Trong phương pháp đầu tiên, chúng tôi sẽ giảm số bằng cách chia nó cho 10. Và đếm cho đến khi số đó bằng 0.

Ví dụ

#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;
}

Đầu ra

Number of digits in 1245: 4

Bây giờ, chúng ta sẽ thấy phương pháp ngắn hơn. Trong phương pháp này, chúng ta sẽ sử dụng hàm log cơ số 10 để lấy kết quả. Công thức sẽ là số nguyên của (log10 (số) + 1). Ví dụ:nếu số là 1245, thì nó trên 1000 và dưới 10000, vì vậy giá trị log sẽ nằm trong phạm vi 3

Ví dụ

#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;
}

Đầu ra

Number of digits in 1245: 4