দুই খেলোয়াড়ের সাথে দেওয়া ধরা যাক A এবং B উভয়ই ম্যাচ জেতার জন্য পেনাল্টি পাওয়ার চেষ্টা করছে৷ চারটি পূর্ণসংখ্যার ভেরিয়েবল a, b, c, d দিয়ে দেওয়া হয়েছে তাই A এর আগে পেনাল্টি পাওয়ার সম্ভাবনা হল a / b এবং B এর আগে পেনাল্টি পাওয়ার সম্ভাবনা হল c / d৷
যে প্রথমে পেনাল্টি স্কোর করবে সে ম্যাচ জিতবে এবং প্রদত্ত সমস্যা বিবৃতি প্রোগ্রাম অনুযায়ী A-এর ম্যাচ জেতার সম্ভাবনা খুঁজে বের করতে হবে।
ইনপুট
a = 10, b = 20, c = 30, d = 40
আউটপুট
probability is 0.5333
ইনপুট
a = 1, b = 2, c = 10, d = 11
আউটপুট
probability is 0.523
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
a, b, c, d
চারটি পূর্ণসংখ্যা ভেরিয়েবলের মান ইনপুট করুন -
মোট সম্ভাব্যতা থেকে B-এর ম্যাচ জেতার সম্ভাবনা বিয়োগ করুন এবং আমরা A-এর ম্যাচ জেতার ফলে সম্ভাব্যতা পাব
e * (1 / (1 - (1 - f) * (1 - f))))
যেখানে, e হল A ম্যাচ জেতার সম্ভাবনা এবং f হল B ম্যাচ জেতার সম্ভাবনা
-
A ম্যাচ জেতার সম্ভাবনা প্রদর্শন করুন
অ্যালগরিদম
Start Step 1→ Declare function to calculate the probability of winning double probab_win(int a, int b, int c, int d) Declare double e = (double)a / (double)b Declare double f = (double)c / (double)d return (e * (1 / (1 - (1 - f) * (1 - f)))) Step 2→ In main() Declare variable as int a = 10, b = 20, c = 30, d = 40 Call probab_win(a, b, c, d) Stop
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
// calculate the probability of winning the match
double probab_win(int a, int b, int c, int d){
double e = (double)a / (double)b;
double f = (double)c / (double)d;
return (e * (1 / (1 - (1 - f) * (1 - f))));
}
int main(){
int a = 10, b = 20, c = 30, d = 40;
cout<<"probability is "<<probab_win(a, b, c, d);
return 0;
} আউটপুট
উপরের কোডটি চালালে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেprobability is 0.5333