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

C++ में विषम पूर्णांकों के योग के रूप में 'n' को व्यक्त करने के तरीके गिनें


इनपुट के रूप में एक पूर्णांक n दिया गया है। लक्ष्य उन तरीकों की संख्या ज्ञात करना है जिनसे हम 'n' को विषम पूर्णांकों के योग के रूप में प्रदर्शित कर सकते हैं। उदाहरण के लिए, यदि n 3 है तो इसे योग के रूप में दर्शाया जा सकता है ( 1+1+1 ) और (3) इसलिए कुल 2 तरीके।

उदाहरण के लिए

इनपुट

n=6

आउटपुट

Count of ways to express ‘n’ as sum of odd integers are: 8

स्पष्टीकरण

The ways in which we can express ‘n’ as sum of odd integers −
1. 1+1+1+1+1+1
2. 3+1+1+1
3. 1+3+1+1
4. 1+1+3+1
5. 1+1+1+3
6. 3+3
7. 1+5
8. 5+1

इनपुट

n=9

आउटपुट

Count of ways to express ‘n’ as sum of odd integers are: 34

स्पष्टीकरण

The some of the ways in which we can express ‘n’ as sum of odd integers:
1. 1+1+1+1+1+1+1+1+1
2. 3+3+3
3. 5+3+1
4. 7+1+1
5. ….and other such combinations

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

इस दृष्टिकोण में हम पिछली संख्याओं से विषम पूर्णांकों के योग के रूप में एक संख्या को निरूपित करने के तरीकों की जाँच करेंगे जो n−1th और n−2th संख्याएं हैं। तरीके होंगे तरीके(n−1) + तरीके(n−2)।

  • इनपुट के रूप में एक पूर्णांक n लें।

  • फ़ंक्शन विषम_वे (int n) एक संख्या लेता है और 'n' को विषम पूर्णांकों के योग के रूप में व्यक्त करने के तरीकों की संख्या देता है।

  • विषम पूर्णांकों के योग के रूप में संख्याओं का प्रतिनिधित्व करने के लिए गिनती के तरीकों को संग्रहीत करने के लिए लंबाई n+1 की एक सरणी गिरफ्तारी लें।

  • नंबर 0 के लिए, ऐसा कोई तरीका नहीं है इसलिए arr[0] को 0 के साथ सेट करें।

  • नंबर 1 के लिए केवल एक ही तरीका है इसलिए arr[1] को 1 के साथ सेट करें।

  • शेष संख्याओं के लिए हम arr[i] को arr[i−1]+arr[i−2] के साथ 2 से n के बीच i के लिए सेट कर सकते हैं।

  • अंत में हमारे पास arr[n] उन तरीकों की संख्या है जिनमें n को विषम पूर्णांकों के योग के रूप में दर्शाया जाता है।

  • परिणाम के रूप में वापसी गिरफ्तारी [n]।

उदाहरण

#include<iostream>
using namespace std;
int odd_ways(int n){
   int arr[n+1];
   arr[0] = 0;
   arr[1] = 1;
   for(int i = 2; i <= n; i++){
      arr[i] = arr[i-1] + arr[i-2];
   }
   return arr[n];
}
int main(){
   int n = 6;
   cout<<"Count of ways to express ‘n’ as sum of odd integers are: "<<odd_ways(n);
   return 0;
}

आउटपुट

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

Count of ways to express ‘n’ as sum of odd integers are: 8

  1. C++ में एक पूर्णांक में सम और विषम अंकों की गणना करें

    हमें एक पूर्णांक संख्या दी गई है और कार्य सम संख्याओं और विषम संख्याओं को एक अंक में गिनना है। साथ ही, हम यह भी जांचते रहेंगे कि क्या किसी पूर्णांक में सम अंक सम संख्या में आ रहे हैं और पूर्णांक में विषम अंक विषम संख्या में बार-बार आ रहे हैं। उदाहरण के लिए Input − digit = 12345 Output −

  1. C++ में एक अंक के रूप में 0 के साथ 'd' अंक धनात्मक पूर्णांकों की गणना करें

    इस ट्यूटोरियल में, हम एक प्रोग्राम के बारे में चर्चा करेंगे जिसमें डी अंक वाले अंक 0 के साथ एक अंक के रूप में मिलते हैं। इसके लिए हमें एक नंबर d दिया जाएगा। हमारा कार्य d अंक वाले धनात्मक पूर्णांकों की संख्या और उनके अंक के रूप में 0 को गिनना और प्रिंट करना है। उदाहरण #include<bits/stdc++.h>

  1. सी++ में एन यूनीक इंटीजर योग जीरो तक खोजें

    इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - एक सरणी A को अंतिम उत्तर के रूप में लें, और x :=0 लें मैं के लिए 0 से n - 2 की सीमा में ए[i] =(i + 1) x :=x + i + 1 ए[एन - 1] =एक्स वापसी ए उदाहरण आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें - #include <bits/stdc++.h> using names