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

C/C++ प्रोग्राम: किसी संख्या के फैक्टोरियल में अनुगामी शून्यों की गणना

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

सबसे आसान दृष्टिकोण केवल फैक्टोरियल की गणना करना और 0 गिनना है। लेकिन यह दृष्टिकोण n के बड़े मान के लिए विफल होता है। इसलिए हम दूसरे दृष्टिकोण का पालन करेंगे। अनुगामी शून्य वहां होंगे, यदि अभाज्य गुणनखंड 2 और 5 हैं। यदि हम 2 और 5 गिनते हैं तो हम परिणाम प्राप्त कर सकते हैं। इसके लिए हम इस नियम का पालन करेंगे।

अनुगामी 0 = फैक्टोरियल(n) के अभाज्य गुणनखंडों में 5 की गिनती

C/C++ प्रोग्राम: किसी संख्या के फैक्टोरियल में अनुगामी शून्यों की गणना

एल्गोरिदम

countTrailingZeros(n)

शुरुआत
    count := 0
    i := 5 से, (n/i) >= 1 तक, i := i * 5 बढ़ाते हुए करें
        count := count + (n / i)
    पूर्ण
    count वापस करें
समाप्त

उदाहरण

#include <iostream>
#include <cmath>
#define MAX 20
using namespace std;

int countTrailingZeros(int n) {
    int count = 0;
    for (int i = 5; n / i >= 1; i *= 5)
        count += n / i;
    return count;
}

int main() {
    int n = 20;
    cout << "Number of trailing zeros: " << countTrailingZeros(n);
    return 0;
}

आउटपुट

Number of trailing zeros: 4
  1. त्रिकोणीय माचिस संख्या (Triangular Matchstick Number) के लिए C/C++ प्रोग्राम? त्रिकोणीय माचिस संख्या (Triangular Matchstick Number) के लिए C/C++ प्रोग्राम?

    माचिस की तीलियों का उपयोग करके बनाया गया एक त्रिकोण जो एक समबाहु त्रिकोण बनाने के लिए व्यवस्थित होता है, इसे त्रिकोणीय माचिस संख्या कहा जाता है। त्रिकोणीय माचिस संख्या माचिस त्रिकोण बनाने के लिए आवश्यक माचिस की तीलियों की संख्या है। इस समस्या में, हमारे पास माचिस पिरामिड की मंजिलों की संख्या X है।

  1. सिक्कों के पिरामिड की अधिकतम ऊंचाई के लिए C/C++ प्रोग्राम? सिक्कों के पिरामिड की अधिकतम ऊंचाई के लिए C/C++ प्रोग्राम?

    हमारे पास n संख्या में सिक्के हैं और हमें सिक्कों को इस तरह व्यवस्थित करना है कि यह अधिकतम ऊंचाई का पिरामिड बनाए। हम पहले सिक्के को पहली पंक्ति में, दूसरे और तीसरे सिक्के को दूसरी पंक्ति में, और इसी तरह व्यवस्थित करेंगे। दिए गए आरेख में, हम 6 सिक्कों का पिरामिड बनाते हैं जिसकी ऊंचाई 3 है। हम ऊंचाई

  1. nवीं कैटलन संख्या (nth Catalan Number) के लिए C/C++ प्रोग्राम? nवीं कैटलन संख्या (nth Catalan Number) के लिए C/C++ प्रोग्राम?

    कैटलन संख्याएं (Catalan numbers) संख्याओं का एक अनुक्रम है। कैटलन संख्याएं प्राकृतिक संख्याओं का एक अनुक्रम बनाती हैं जो विभिन्न गणना समस्याओं में होती हैं, अक्सर पुनरावर्ती रूप से परिभाषित वस्तुओं से जुड़ी होती हैं। Cₙ लंबाई 2n के डाइक शब्दों (Dyck words) की संख्या है। एक डाइक शब्द n Xs और n Ys