কম্পিউটার

C-তে পরপর 1 ছাড়া বাইনারি স্ট্রিংয়ের সংখ্যা গণনা করুন


প্রদত্ত টাস্ক হল দৈর্ঘ্যের সমস্ত বাইনারি স্ট্রিংগুলির সংখ্যা গণনা করা n পরপর 1' ছাড়াই৷

বাইনারি নম্বর সিস্টেম হল সংখ্যা প্রতিনিধিত্ব কৌশলগুলির একটি প্রকার। এটি সবচেয়ে জনপ্রিয় এবং ডিজিটাল সিস্টেমে ব্যবহৃত হয়। বাইনারি সিস্টেমটি বাইনারি পরিমাণের প্রতিনিধিত্ব করার জন্য ব্যবহৃত হয় যা শুধুমাত্র দুটি অপারেটিং অবস্থা বা সম্ভাব্য শর্ত রয়েছে এমন যেকোনো ডিভাইস দ্বারা প্রতিনিধিত্ব করা যেতে পারে। উদাহরণস্বরূপ, একটি সুইচের শুধুমাত্র দুটি অবস্থা আছে:খোলা বা বন্ধ।

বাইনারি সিস্টেমে, শুধুমাত্র দুটি চিহ্ন বা সম্ভাব্য অঙ্কের মান রয়েছে, যেমন, 0 এবং 1. যেকোন ডিভাইস দ্বারা প্রতিনিধিত্ব করা হয় যার শুধুমাত্র 2টি অপারেটিং অবস্থা বা সম্ভাব্য শর্ত রয়েছে৷ বাইনারি স্ট্রিং হল সেই স্ট্রিংগুলি যাতে বাইনারি মান থাকে যেমন হয় 0 বা 1

আসুন এখন বুঝতে পারি একটি উদাহরণ ব্যবহার করে আমাদের কী করতে হবে −

ইনপুট − n =2

আউটপুট − পরপর 1 এর 2 ছাড়া বাইনারি স্ট্রিংগুলির গণনা হল :3

ব্যাখ্যা − 00, 01, 10 তাই শুধুমাত্র 3টি বাইনারি স্ট্রিং আছে যার দৈর্ঘ্য n একটি পরপর 1’স নয়

ইনপুট − n =7

আউটপুট৷ − পরপর 1 এর 7 ছাড়া বাইনারি স্ট্রিংগুলির গণনা হল − 34

নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • স্ট্রিং দৈর্ঘ্যের জন্য একটি ইনপুট n নিন

  • গণনা ফাংশনে আমরা পরপর 1 ছাড়া বাইনারি স্ট্রিংগুলি গণনা করব, n আকারের দুটি অ্যারে arr[] এবং arr_2 সংজ্ঞায়িত করব, এবং ফলাফল সংরক্ষণ করার জন্য একটি পরিবর্তনশীল টেম্প।

  • উভয় অ্যারের 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

  1. পাইথনে সামঞ্জস্যপূর্ণ স্ট্রিংয়ের সংখ্যা গণনা করার জন্য প্রোগ্রাম

  2. পাইথনে বাইনারি রিপ্রেজেন্টেশনে সেট বিটের প্রাইম নম্বর

  3. পাইথন প্রোগ্রাম পরপর 1’ ছাড়া বাইনারি স্ট্রিং সংখ্যা গণনা করতে

  4. একটি সংখ্যার মোট বিট গণনা করার জন্য একটি পাইথন প্রোগ্রাম লিখুন?