কম্পিউটার টিউটোরিয়াল

C++-তে ভাঙা ছড়ির টুকরো দিয়ে N-ভুজবদ্ধ বহুভুজ বানানো সম্ভব কিনা (প্রোবাবিলিটি)


একটি ছড়ি দেওয়া আছে যেটি র‍্যান্ডমলি n টুকরোতে ভাঙা হয় (ইন্টিজার বা ফ্লোটিং পয়েন্ট)। টাস্ক হলো এই টুকরোগুলো দিয়ে n-ভুজবদ্ধ বহুভুজ (polygon) বানানো সম্ভব কিনা তার প্রোবাবিলিটি বের করা।

প্রোবাবিলিটি ফর্মুলা:

P(E') = 1 - P(E) = 1 - n / 2^(n-1)

যেখানে n = টুকরোর সংখ্যা।

ইনপুট − length=10, pieces=4

আউটপুট − probability is: 0.5

ইনপুট − length=5, pieces=3

আউটপুট − probability is: 0.25

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

  • ছড়ির দৈর্ঘ্য এবং টুকরোর সংখ্যা ইনপুট নিন।
  • ফর্মুলা অ্যাপ্লাই করুন।
  • ফলাফল প্রিন্ট করুন।

অ্যালগরিদম

Start
function probab(len, pieces)
  a = 1 << (pieces-1)  // 2^(pieces-1)
  return 1.0 - (double)pieces / (double)a
Stop

উদাহরণ

#include <iostream>
using namespace std;

double probab(unsigned len, unsigned pieces) {
    unsigned a = (1 << (pieces - 1)); // 2^(pieces-1)
    return 1.0 - ((double)pieces) / ((double)a);
}

int main() {
    unsigned pieces = 4, len = 10;
    cout << "probability is: " << probab(len, pieces);
    return 0;
}

আউটপুট

probability is: 0.5
  1. N কাটা দিয়ে বৃত্তের টুকরোর সংখ্যা গণনা C++-এ

  2. লিনাক্সে C++-এর জন্য সেরা IDE কী?

  3. লিনাক্সে C++-এর জন্য সেরা IDE কী? (আলাদা লেখা)

  4. উইন্ডোজে C++-এর জন্য সেরা IDE কী? (আলাদা লেখা)