यह देखते हुए कि कार्य बिना किसी क्रमागत 1 के लंबाई n के सभी बाइनरी स्ट्रिंग्स की संख्या की गणना करना है।
बाइनरी नंबर सिस्टम नंबर प्रतिनिधित्व तकनीकों का एक प्रकार है। यह सबसे लोकप्रिय है और डिजिटल सिस्टम में उपयोग किया जाता है। बाइनरी सिस्टम का उपयोग बाइनरी मात्राओं का प्रतिनिधित्व करने के लिए किया जाता है जिसे किसी भी डिवाइस द्वारा दर्शाया जा सकता है जिसमें केवल दो ऑपरेटिंग राज्य या संभावित स्थितियां होती हैं। उदाहरण के लिए, एक स्विच में केवल दो अवस्थाएँ होती हैं:खुला या बंद।
बाइनरी सिस्टम में, केवल दो प्रतीक या संभावित अंक मान होते हैं, अर्थात, 0 और 1. किसी भी उपकरण द्वारा प्रतिनिधित्व किया जाता है जिसमें केवल 2 ऑपरेटिंग राज्य या संभावित स्थितियां होती हैं। बाइनरी स्ट्रिंग्स वे स्ट्रिंग्स हैं जिनमें बाइनरी मान होते हैं यानी या तो 0 या 1 का
आइए अब समझते हैं कि हमें एक उदाहरण का उपयोग करके क्या करना है -
इनपुट - एन =2
आउटपुट − 2 में से लगातार 1 के बिना बाइनरी स्ट्रिंग्स की संख्या है :3
स्पष्टीकरण - 00, 01, 10 इसलिए केवल 3 बाइनरी स्ट्रिंग्स हैं जिनकी लंबाई n लगातार 1 नहीं है
इनपुट - एन =7
आउटपुट − 7 में से लगातार 1 के बिना बाइनरी स्ट्रिंग्स की संख्या है - 34
निम्नलिखित कार्यक्रम में उपयोग किया गया दृष्टिकोण इस प्रकार है
-
स्ट्रिंग लंबाई के लिए इनपुट n लें
-
गिनती फ़ंक्शन में हम बाइनरी स्ट्रिंग्स को लगातार 1 के बिना गिनेंगे, दो सरणियों को परिभाषित करेंगे arr[] और arr_2 आकार n, और एक चर अस्थायी परिणाम को संग्रहीत करने के लिए।
-
दोनों सरणियों के 0वें तत्व को 1 के रूप में निर्दिष्ट करें
-
लूप i=1 से I तक n से कम है।
-
लूप में रहते हुए, arr[i] =arr[i-1]+arr_2[i-1] और arr_2[i] =arr[i-1]
सेट करें -
temp =arr[n-1]+arr_2[n-1] सेट करें, और फिर अस्थायी प्रिंट करें।
उदाहरण
#include<stdio.h> //create function to calculate binary strings without consecutive 1’s void count(int num){ int arr[num]; int arr_2[num]; int i=0, temp=0; arr[0] = arr_2[0] = 1; //loop till number isn't equals to 0 for (i = 1; i < num; i++){ arr[i] = arr[i-1] + arr_2[i-1]; arr_2[i] = arr[i-1]; } temp = arr[num-1] + arr_2[num-1]; printf("Count of binary strings without consecutive 1’s of %d is : %d",num,temp); printf("\n"); } int main(){ //call the count function count(10); count(7); count(1); return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो हमें निम्न आउटपुट मिलेगा -
Count of binary strings without consecutive 1’s of 10 is : 144 Count of binary strings without consecutive 1’s of 7 is : 34 Count of binary strings without consecutive 1’s of 1 is : 2