Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में डुडनी नंबर (Dudeney Numbers)


संख्या सिद्धांत में परिभाषित एक गणितीय संख्या एक दी गई संख्या आधार में एक प्राकृतिक संख्या है जो दूसरी प्राकृतिक संख्या के पूर्ण घन के बराबर होती है जैसे कि पहली प्राकृतिक संख्या का अंक योग दूसरी संख्या के अंक योग के बराबर होता है (विकिपीडिया)।

इस संख्या की खोज हेनरी डुडनी ने की थी। इसका गणितीय सूत्र है:

C++ में डुडनी नंबर (Dudeney Numbers)

यहां, हमें एक पूर्णांक n दिया गया है। हमारा कार्य जांचना है कि दी गई संख्या n डुडनी नंबर है या नहीं।

उदाहरण से समझते हैं:

इनपुट: N = 17592

आउटपुट: नहीं

व्याख्या:

दी गई संख्या डुडनी नंबर नहीं है।

समाधान दृष्टिकोण:

समाधान डुडनी नंबर की मूल परिभाषा में निहित है। एक संख्या डुडनी नंबर इस तथ्य पर आधारित होती है कि किसी संख्या का घनमूल उसके अंकों के योग के बराबर होता है।

एल्गोरिदम:

चरण 1: जांचें कि क्या n एक पूर्ण घन है।

चरण 2.1: यदि हां, तो जांचें कि क्या n का घनमूल = n के अंकों का योग।

चरण 2.2.1: यदि हां, तो संख्या डुडनी नंबर है।

चरण 2.2.2: यदि नहीं, तो संख्या डुडनी नंबर नहीं है।

चरण 2.2: यदि नहीं, तो संख्या डुडनी नंबर नहीं है।

हमारे एल्गोरिदम की कार्यप्रणाली को दर्शाने वाला C++ प्रोग्राम:

उदाहरण

#include <bits/stdc++.h> 
using namespace std; 

int calcDigitSum(int n) { 
    int digitSum = 0; 
    int digitVal; 
    while (n > 0) { 
        digitVal = n % 10; 
        digitSum += digitVal; 
        n /= 10; 
    } 
    return digitSum; 
} 

int checkDudeney(int N) { 
    int cubeRoot = int(round(cbrt(N))); 
    if (pow(cubeRoot, 3.0) != N) { 
        return 0; 
    } 
    int sumOfDigit = calcDigitSum(N); 
    if (cubeRoot != sumOfDigit) 
        return 0; 
    return 1; 
} 

int main() { 
    int N = 104323; 
    cout << "The number " << N; 
    if (checkDudeney(N)) 
        cout << " is a dudeney number."; 
    else 
        cout << " is not a dudeney number."; 
    return 0; 
}

आउटपुट:

The number 104323 is not a dudeney number.

  1. - C++ में मितव्ययी संख्या (Frugal Number)

    इस समस्या में, हमें एक धनात्मक पूर्णांक N दिया गया है। हमारा कार्य यह जांचने के लिए एक प्रोग्राम बनाना है कि दी गई संख्या मितव्ययी संख्या है या नहीं। मितव्ययी संख्या (FRUGAL NUMBER) − एक संख्या जिसके अंकों की संख्या उस संख्या के अभाज्य गुणनखंडन में अंकों की संख्या से सख्ती से अधिक है। उदाहरण &

  1. C++ में पेंटाटोप संख्या C++ में पेंटाटोप संख्या

    एक पेंटाटोप संख्या को पास्कल के त्रिभुज में पांचवीं संख्या के रूप में वर्णित किया गया है। अब, चूंकि यह पांचवीं संख्या है, इसका मतलब है कि पास्कल के त्रिभुज में कम से कम पांच संख्याएं होनी चाहिए, इसलिए इस श्रृंखला की पहली संख्या 1 4 6 4 1 से शुरू होती है जो पास्कल के त्रिभुज की चौथी पंक्ति है। तो, इस

  1. - C++ में जांचें कि क्या कोई संख्या मिस्ट्री नंबर है

    यहां हम देखेंगे कि कैसे जांचें कि कोई संख्या मिस्ट्री नंबर है या नहीं। एक मिस्ट्री नंबर वह संख्या है जिसे दो संख्याओं के योग द्वारा दर्शाया जा सकता है, और वे संख्याएं एक-दूसरे की रिवर्स हैं। आइए कोड देखें ताकि बेहतर विचार मिल सके। हमें सभी जोड़ों की जांच करनी होगी और निर्णय ढूंढना होगा। उदाहरण rev