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

Tìm số chữ số trong một số chia số đó trong C ++

Giả sử một số được đưa ra. Chúng ta phải đếm số chữ số của số chia đều cho số đó. Giả sử số là 1012, kết quả là 3. Có ba chữ số 1, 1, 2 chia đều cho 1012.

Để giải quyết vấn đề này, chúng ta sẽ tìm từng chữ số của một số, sử dụng phép toán môđun và kiểm tra xem số đó có chia hết cho chữ số đó hay không, nếu chia hết thì tăng đếm. Nếu chữ số là 0 thì bỏ qua chữ số đó.

Ví dụ

#include<iostream>
using namespace std;
   int countDivDigit(int num) {
   int count = 0;
   int temp = num;
   while(temp){
      int div = temp%10;
      if(div != 0){
         if(num % div == 0)
            count++;
      }
      temp /= 10;
   }
   return count;
}
int main() {
   int num = 1012;
   cout << "Number of digits that divides " << num << " evenly, is: " << countDivDigit(num);
}

Đầu ra

Number of digits that divides 1012 evenly, is: 3