কম্পিউটার

লক্ষ্যে আঘাত করার সম্ভাবনাগুলি C++ এ দেওয়া হলে একজন খেলোয়াড়ের জয়ের সম্ভাবনা খুঁজুন


এই সমস্যায় আমাদের চারটি মান দেওয়া হয়েছে p, q, r, s। আমাদের কাজ হল সম্ভাব্যতা খুঁজে বের করা যে একজন খেলোয়াড় যখন লক্ষ্যে আঘাত করার সম্ভাবনা দেওয়া হয় তখন জয়ী হয়।

এখানে, আমাদের দুজন খেলোয়াড় আছে যারা তীরন্দাজ খেলা খেলছে। এবং 1 প্লেয়ারের লক্ষ্যে আঘাত করার সম্ভাবনা p/q হিসাবে সংজ্ঞায়িত করা হয় . প্লেয়ার 2 লক্ষ্যে আঘাত করার সম্ভাবনাকে r/s হিসাবে সংজ্ঞায়িত করা হয়। আমাদের একজন খেলোয়াড়ের খেলা জেতার সম্ভাবনা খুঁজে বের করতে হবে।

সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,

ইনপুট

p = 3, q = 5, r = 2, s = 5

আউটপুট

0.789

সমাধান পদ্ধতি

*এই পদ্ধতির জন্য সম্ভাব্যতার জ্ঞান প্রয়োজন।

যেহেতু, খেলোয়াড়রা কতবার লক্ষ্যে আঘাত করার সুযোগ পেতে পারে তার কোন ঊর্ধ্ব সীমা নেই। উভয়ই যেকোন সংখ্যকবার লক্ষ্যকে আঘাত করতে পারে যা বিজয়ী পরিস্থিতি গণনাকে ট্রায়ালের সংখ্যার উপর নির্ভর করে।

তাই,

ধরা যাক একজন খেলোয়াড় লক্ষ্যে আঘাত করার সম্ভাব্যতা হল P1 =p/q, এটি 1 - p/q হারিয়ে যাওয়ার সম্ভাবনা তৈরি করে।

ধরা যাক দুই খেলোয়াড়ের লক্ষ্যে আঘাত করার সম্ভাবনা হল P2 =r/s, যা 1 - r/s হারিয়ে যাওয়ার সম্ভাবনা তৈরি করে।

এখন, অসীম সংখ্যক ট্রায়ালের জন্য, প্লেয়ার 1 জেতার সম্ভাবনা হতে পারে,

000win(P1) + (lost(P1)*lost(P2)*win(P1)) +
(lost(P1)*lost(P2)*lost(P1)*lost(P2)*win(P1) + ….

যেটিকে

হিসাবে প্রণয়ন করা যেতে পারে

P1 + ((1 - P1)*(1 - P2)*(P1)) + ((1 - P1)*(1 - P2)*(1 - P1)*(1 - P2)*(P1)) …

এটি একটি অসীম জিপি যেখানে,

A = P1
R = [(1 - P1)*(1 - P2)]

যোগফল হবে,

S = A/ (1- R) , as R is less than 1.

$$S=\left(\frac{\left(\frac{p}{p}\right)}{1-\left(1-\frac{p}{p}\right)*\left(1- \frac{p}{p}\right)}\right)$$

আমাদের সমাধানের কাজ চিত্রিত করার জন্য প্রোগ্রাম,

উদাহরণ

#include <iostream>
using namespace std;
double calcWinningPropP1(double p, double q, double r, double s){
   return (p / q) / (1 - ( (1 - (p/q)) * (1 - (r/s)) ) );
}
int main() {
   double p = 3, q = 5, r = 2, s = 5;
   cout<<"The probability of player 1 winning is "<<calcWinningPropP1(p, q, r, s);
   return 0;
}

আউটপুট

The probability of player 1 winning is 0.789474

  1. C++ এ LCM এবং HCF দেওয়া হলে অন্য নম্বরটি খুঁজুন

  2. C++ এ প্রদত্ত প্রাইম দ্বারা nCr বিভাজ্য কিনা তা খুঁজুন

  3. একটি মার্কভ চেইনে একটি নির্দিষ্ট সময়ে একটি রাজ্যের সম্ভাব্যতা খুঁজে বের করার জন্য C++ প্রোগ্রাম

  4. একটি প্রদত্ত বিন্দু কভার করে এমন সেরা ফিট আয়তক্ষেত্র খুঁজে পেতে C++ প্রোগ্রাম