इस समस्या में, हमें दो सरणियाँ दी गई हैं, जिनमें से प्रत्येक एक निवेश योजना को दर्शाती है। हमारा काम निवेश में जोखिम का मूल्यांकन . करना है और पता लगाएं कि दोनों में से कौन सा निवेश अधिक आशाजनक है।
दोनों निवेश I1[][] और I2[][] के परिणामों का एक सेट और उस निवेश परिणाम की संभावना है।
इन मूल्यों का उपयोग करते हुए, हमें प्रत्येक निवेश में जोखिम का पता लगाना होगा और फिर दो निवेशों में से बेहतर निवेश को प्रिंट करना होगा।
इसके लिए, हम सांख्यिकीय गणित का उपयोग करेंगे और कुछ मूल्यों को खोजेंगे जो हमें बेहतर निवेश के लिए निष्कर्ष निकालने में मदद करेंगे।
हमें ये मान मिलेंगे,
- औसत या औसत राशि निवेश से बनती है, निवेश परिणाम और संभाव्यता के उत्पाद का योग।
- अर्जित राशि पर विचलन
हम इसका मान पाएंगे,
मानक विचलन / निवेश के माध्य के बारे में
एस.डी. के कम मूल्य के साथ निवेश। / माध्य परिणाम है।
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला कार्यक्रम,
उदाहरण
#include <iostream> #include <vector> #include <algorithm> #include <cmath> using namespace std; typedef pair<float,float> Data; typedef vector Vector; float totalProdProbOutcome(const Vector & v) { float sum = 0; for ( auto i : v) { sum += i.first * i.second; } return sum; } float totalProb(const Vector & v) { float sum = 0.0; for ( auto i : v) { sum += i.second; } return sum; } float CalcMeanVal(const Vector & v) { return totalProdProbOutcome(v) / totalProb(v); } float calcStdDevi(const Vector & v) { float mean = CalcMeanVal(v); float sum = 0; for (auto i: v) sum += (i.first-mean)* (i.first-mean)*i.second; return sqrt(sum/totalProb(v)); } int main() { Vector A = { {450,0.3}, {250,0.4}, {100,0.2}, {300,0.1}}; Vector B = { {300,0.2}, {150,0.5}, {500,0.3}}; float meanA = CalcMeanVal(A); float meanB = CalcMeanVal(B); float SdA = calcStdDevi(A); float SdB = calcStdDevi(B); if( (SdA / meanA) > (SdB / meanB)) cout<<"Investment A is Better investment.\n"; else cout<<"Investment B is better investment.\n"; return 0; }
आउटपुट -
Investment B is better investment.