কম্পিউটার

একটি সংখ্যাকে C++ অংশে ভাগ করার উপায় গণনা করুন


আমাদের একটি ধনাত্মক সংখ্যা N দেওয়া হয়েছে। লক্ষ্য হল সংখ্যা গণনা করা যেভাবে N সংখ্যাটিকে 3 ভাগে ভাগ করা যায়। অংশ সমান হতে পারে বা নাও হতে পারে। N এর পরিসর [1,5000]।

আমরা সংখ্যার 3টি অংশের জন্য থ্রি ফর লুপ ব্যবহার করে এটি করব। সবচেয়ে ভিতরের লুপে চেক করুন যে তিনটির যোগফল N এর সমান। যদি সত্য হয়, তাহলে উপায়ের সংখ্যা বৃদ্ধি করুন।

উদাহরণ দিয়ে বোঝা যাক।

ইনপুট − N=5

আউটপুট − N কে 3 ভাগে ভাগ করার উপায়ের সংখ্যা:2

ব্যাখ্যা − 5 (1,1,3) এবং (1,2,2) এর যোগফল হিসাবে দেখানো যেতে পারে

ইনপুট − N=9

আউটপুট − N কে 3 ভাগে ভাগ করার উপায়ের সংখ্যা:7

ব্যাখ্যা − 9 এর যোগফল হিসাবে দেখানো যেতে পারে:(1, 1, 7), (1, 2, 6), (1, 3, 5), (1, 4, 4), (2, 2, 5), ( 2, 3,4) এবং (3, 3, 3)।

নিচের প্রোগ্রামে ব্যবহৃত পদ্ধতিটি নিম্নরূপ

  • আমরা 1 এবং 5000 এর মধ্যে মান সহ একটি পূর্ণসংখ্যা N শুরু করি।

  • ফাংশন divideN(int n) n নেয় এবং n কে 3 ভাগে ভাগ করা যায় তার সংখ্যা ফেরত দেয়।

  • উপায় সংখ্যার জন্য প্রাথমিক পরিবর্তনশীল গণনা 0 হিসাবে নিন।

  • সংখ্যার প্রতিটি অংশের জন্য তিনটি লুপ ব্যবহার করে ট্রাভার্স করুন।

  • 1<=i থেকে সবচেয়ে বাইরের লুপ

  • i, j এবং k এর যোগফল n এর সমান কিনা তা পরীক্ষা করুন। যদি সত্য হয় তাহলে সংখ্যা বৃদ্ধি করুন।

  • সমস্ত লুপ গণনার শেষে n কে তিনটি ভাগে ভাগ করার মোট উপায় থাকবে।

  • ফলাফল হিসাবে গণনা ফেরত দিন।

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
int divideN(int n){
   int count = 0;
   for (int i = 1; i < n; i++){
      for (int j = i ; j < n; j++){
         for (int k = j; k < n; k++){
            int sum=i+j+k;
            if(sum==n)
               { count++; }
         }
      }
   }
   return count;
}
int main(){
   int N=500;
   cout <<endl<< "Number of ways to divide N in 3 parts : "<<divideN(N);
   return 0;
}

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −

উৎপন্ন করবে
Number of ways to divide N in 3 parts: 20833

  1. একটি সেটকে C++-এ k উপসেটে ভাগ করার উপায় গণনা করুন

  2. C++ এ একটি আয়তক্ষেত্রে বর্গক্ষেত্রের সংখ্যা গণনা করুন

  3. সংখ্যাকে চারটি ভাগে ভাগ করার উপায় খুঁজে বের করুন যেমন C++ এ a =c এবং b =d

  4. একটি সংখ্যায় সংখ্যার গণনা খুঁজুন যা সংখ্যাটিকে C++ এ ভাগ করে