इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो यह पता लगाता है कि दी गई संख्या काप्रेकर संख्या है या नहीं या नहीं।
एक नंबर लो। उस संख्या का वर्ग ज्ञात कीजिए। संख्या को दो भागों में विभाजित करें। यदि दो भागों का योग मूल संख्या के बराबर हो, तो वह संख्या काप्रेकर संख्या कहलाती है ।
आइए समस्या को हल करने के लिए चरणों को देखें।
- एन को इनिशियलाइज़ करें।
- n का वर्ग ज्ञात कीजिए।
- n के वर्ग में अंकों की संख्या ज्ञात करें और इसे एक चर में संग्रहित करें।
- n के वर्ग को 10, 100, 1000, आदि से विभाजित करें, जब तक कि अंक गिनें नहीं।
- जांचें कि इनमें से किसी भाग का योग n के बराबर है या नहीं।
- वापसी सत्य अगर वे बराबर हैं तो गलत ।
उदाहरण
आइए कोड देखें।
#include<bits/stdc++.h> using namespace std; bool isKaprekarNumber(int n) { if (n == 1) { return true; } int nSquare = n * n, digitsCount = 0; while (nSquare) { digitsCount++; nSquare /= 10; } nSquare = n * n; for (int i = 1; i < digitsCount; i++) { int parts = pow(10, i); if (parts == n) { continue; } int sum = nSquare / parts + nSquare % parts; if (sum == n) { return true; } } return false; } int main() { int n = 25; string result = isKaprekarNumber(n) ? "True" : "False"; cout << result << endl; return 0; }
आउटपुट
यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।
False
निष्कर्ष
यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।