मान लीजिए एक नंबर दिया गया है। हमें उस संख्या के अंकों की संख्या गिननी है जो संख्या को समान रूप से विभाजित करती है। मान लीजिए कि संख्या 1012 है, परिणाम 3 है। तीन अंक 1, 1 और 2 हैं जो समान रूप से 1012 को विभाजित करते हैं।
इसे हल करने के लिए, हम मॉड्यूलस ऑपरेशन का उपयोग करके संख्या के प्रत्येक अंक को ढूंढेंगे, और जांच करेंगे कि संख्या उस अंक से विभाज्य है या नहीं, यदि विभाज्य है, तो काउंटर बढ़ाएँ। यदि अंक 0 है, तो उस अंक को अनदेखा करें।
उदाहरण
#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); }
आउटपुट
Number of digits that divides 1012 evenly, is: 3