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

C++ में दी गई रेंज में फैक्टोरियल संख्याओं की गिनती करें


हमें एक रेंज दी गई है जो एक पूर्णांक मान से शुरू होती है जिसे चर द्वारा धारित किया जाता है, मान लीजिए प्रारंभ से चर अंत तक और कार्य दी गई रेंज में उपलब्ध फैक्टोरियल संख्याओं की कुल संख्या को गिनना है।

फैक्टोरियल संख्या क्या है

एक संख्या का फैक्टोरियल एक संख्या में अंकों को गुणा करके घटते क्रम में 1 से घटाकर गणना की जाती है। इसे प्रतीक '!' द्वारा दर्शाया जाता है यानी 0!, 1!, 2!, 3!, 5!,....,आदि। 0! और 1! का फैक्टोरियल हमेशा 1 होता है।

यानी 2 का फैक्टोरियल = 2 * (2-1) = 2 * 1 = 2       3 का फैक्टोरियल = 3 * (3-1) * (2-1) = 3 * 2 * 1 = 6

उदाहरण के लिए

इनपुट - प्रारंभ = 5, अंत = 600 आउटपुट - फैक्टोरियल संख्याओं की गिनती 3 है

व्याख्या - चूंकि, 5-600 की रेंज में 3 संख्याएं उपलब्ध हैं जिनमें फैक्टोरियल संख्याएं हैं।

इनपुट - प्रारंभ = 1, अंत = 100 आउटपुट - फैक्टोरियल संख्याओं की गिनती 5 है

व्याख्या - चूंकि, 5-600 की रेंज में 5 संख्याएं उपलब्ध हैं जिनमें फैक्टोरियल संख्याएं हैं।

नीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण

  • रेंज इनपुट करें और इसे प्रारंभ और अंत चरों में संग्रहीत करें

  • एक और चर लें, 'fact' फैक्टोरियल मानों को संग्रहीत करने के लिए और इसे 1 से आरंभ करें और संख्याओं की गिनती बढ़ाने के लिए एक अस्थायी चर, 'i'

  • लूप शुरू करें, जब तक fact प्रारंभ से कम है और fact को i से गुणा करते रहें ताकि फैक्टोरियल की गणना हो सके और साथ ही, i के मान को बढ़ाते रहें

  • एक और लूप शुरू करें, जब तक fact अंत चर से कम या बराबर है और एक चर r के मान को बढ़ाते रहें और fact को fact *i पर सेट करते रहें और i के मान को बढ़ाते रहें

  • अब, r का मान लौटाएं जो फैक्टोरियल संख्याओं की कुल संख्या की कुल गिनती रख रहा है

  • परिणाम प्रिंट करें।

उदाहरण

#include <iostream>
using namespace std;

// फैक्टोरियल की संख्या गिनने के लिए
int factorials(int start, int end) {
    // 1 से शुरू करके पहला फैक्टोरियल नंबर ढूंढें
    // 'fact' जो 'start' से बड़ा या बराबर हो
    int fact = 1, i = 1;
    while (fact < start) {
        fact = fact * i;
        i++;
    }
    // r रेंज प्रारंभ से अंत तक फैक्टोरियल संख्याओं को गिनने के लिए
    int r = 0;
    while (fact <= end) {
        r++;
        fact = fact * i;
        i++;
    }
    // रेंज में फैक्टोरियल की गिनती लौटाएं
    return r;
}

int main() {
    int start = 5, end = 600;
    cout << "Count of factorial numbers are " << factorials(start, end);
    return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा -

Count of factorial numbers are 3

  1. - C++ में दी गई रेंज में सभी गुड नंबर्स प्रिंट करना

    इस समस्या में, हमें तीन मान L, R, और d दिए गए हैं। हमारा कार्य रेंज L से R के भीतर उन सभी गुड नंबर्स को प्रिंट करना है जिनमें d उनके डिजिट के रूप में नहीं है। गुड नंबर गुड नंबर 2। उदाहरण Input: L = 400, R = 500, k = 3 Output: 410, 420, 421 व्याख्या - 400 से 500 के बीच गुड नंबर्स हैं - 410, 42

  1. - C++ में फैक्टोरियल के अनुगामी शून्य

    यहां हम देखेंगे कि किसी संख्या के फैक्टोरियल के परिणाम के लिए अनुगामी 0 की संख्या की गणना कैसे करें। तो यदि n = 5, तो 5! = 120। केवल एक अनुगामी 0 है। 20! के लिए यह 4 शून्य होगा क्योंकि 20! = 2432902008176640000। सबसे आसान दृष्टिकोण केवल फैक्टोरियल की गणना करना और 0 गिनना है। लेकिन यह दृष्टिकोण n के

  1. - C++ में दी गई लंबाई की संयुक्त संख्याओं की रेंज ज्ञात करें

    मान लीजिए हमारे पास एक संख्या n है। हमें सकारात्मक पूर्णांकों की रेंज ढूंढनी है, जहां रेंज में सभी संख्याएं संयुक्त (composite) हों, और रेंज की लंबाई n हो। यदि एक से अधिक रेंज हैं, तो कोई भी एक रेंज प्रिंट करें। संयुक्त संख्या वह संख्या है जिसमें 1 और स्वयं के अलावा कम से कम एक भाजक होता है। चूंकि र