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

C++ में % ऑपरेटर के बिना 3 और 5 के गुणज


हम % ऑपरेटर का उपयोग करके बिना किसी बाधा के गुणज ढूंढ सकते हैं। लेकिन, समस्या बताती है कि हम % ऑपरेटर का उपयोग नहीं कर सकते।

यहां, हम + ऑपरेटर का उपयोग करते हैं। हम पिछले गुणज में 3 या 5 जोड़कर गुणज प्राप्त कर सकते हैं। आइए एक उदाहरण देखते हैं।

इनपुट

15

आउटपुट

1 2 3 - Multiple of 3 4 5 - Multiple of 5 6 - Multiple of 3 7 8 9 - Multiple 3 10 - Multiple of 5 11 12 - Multiple of 3 13 14 15 - Multiple of both 3 and 5

एल्गोरिदम

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

कार्यान्वयन

निम्नलिखित C++ में उपरोक्त एल्गोरिदम का कार्यान्वयन है:

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

void findMultiplesOf3And5(int n) { 
    int threeMultiple = 3; 
    int fiveMultiple = 5; 
    for (int i = 1; i <= n; i++) { 
        bool _3 = false, _5 = false; 
        if (i == threeMultiple) { 
            threeMultiple += 3; 
            _3 = true; 
        } 
        if (i == fiveMultiple) { 
            fiveMultiple += 5; 
            _5 = true; 
        } 
        if (_3 && _5) { 
            cout << "Multiple of both 3 and 5" << endl; 
        }else if (_3) { 
            cout << "Multiple of 3" << endl; 
        }else if (_5) { 
            cout << "Multiple of 5" << endl; 
        }else { 
            cout << i << endl; 
        } 
    } 
} 

int main() { 
    findMultiplesOf3And5(100); 
    return 0; 
}

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्नलिखित परिणाम मिलेगा।

1 2 Multiple of 3 4 Multiple of 5 Multiple of 3 7 8 Multiple of 3 Multiple of 5 11 Multiple of 3 13 14 Multiple of both 3 and 5 16 17 Multiple of 3 19 Multiple of 5 Multiple of 3 22 23 Multiple of 3 Multiple of 5 26 Multiple of 3 28 29 Multiple of both 3 and 5 31 32 Multiple of 3 34 Multiple of 5 Multiple of 3 37 38 Multiple of 3 Multiple of 5 41 Multiple of 3 43 44 Multiple of both 3 and 5 46 47 Multiple of 3 49 Multiple of 5 Multiple of 3 52 53 Multiple of 3 Multiple of 5 56 Multiple of 3 58 59 Multiple of both 3 and 5 61 62 Multiple of 3 64 Multiple of 5 Multiple of 3 67 68 Multiple of 3 Multiple of 5 71 Multiple of 3 73 74 Multiple of both 3 and 5 76 77 Multiple of 3 79 Multiple of 5 Multiple of 3 82 83 Multiple of 3 Multiple of 5 86 Multiple of 3 88 89 Multiple of both 3 and 5 91 92 Multiple of 3 94 Multiple of 5 Multiple of 3 97 98 Multiple of 3 Multiple of 5

  1. - C++ का उपयोग करके अपना खुद का sizeof ऑपरेटर लागू करें

    एक विकल्प है कि हम अपना खुद का sizeof() ऑपरेटर लागू कर सकते हैं। sizeof() ऑपरेटर एक यूनरी ऑपरेटर है और किसी भी प्रकार के डेटा का आकार गणना करने के लिए उपयोग किया जाता है। हम अपना खुद का sizeof() ऑपरेटर लागू करने के लिए #define डायरेक्टिव का उपयोग कर सकते हैं जो बिल्कुल sizeof() ऑपरेटर की तरह काम करे

  1. - C++ में new और delete ऑपरेटर्स

    new ऑपरेटर हीप में मेमोरी आवंटन का अनुरोध करता है। यदि पर्याप्त मेमोरी उपलब्ध है, तो पॉइंटर वेरिएबल को आरंभ करके उसका पता लौटाता है। सिंटैक्स pointer_variable = new datatype; आरंभीकरण के साथ pointer_variable = new datatype(value); ब्लॉक आवंटन (ऐरे) pointer_variable = new datatype[size]; उदाहरण

  1. - C++ में इन्क्रीमेंट ++ और डिक्रीमेंट -- ऑपरेटर ओवरलोडिंग

    इन्क्रीमेंट (++) और डिक्रीमेंट (--) ऑपरेटर C++ में दो महत्वपूर्ण यूनरी ऑपरेटर हैं। निम्नलिखित उदाहरण दर्शाता है कि इन्क्रीमेंट (++) ऑपरेटर को प्रीफिक्स और पोस्टफिक्स दोनों उपयोग के लिए कैसे ओवरलोड किया जा सकता है। इसी तरह, आप ऑपरेटर (--) को भी ओवरलोड कर सकते हैं। उदाहरण = 60) { ++hours;