একটি প্রাকৃতিক সংখ্যা অ্যারে এবং অন্য একটি অ্যারে ওই সংখ্যাগুলোর ওয়েট (weight) দেওয়া আছে। টাস্ক হলো ওয়েটেড মিন বের করা।
ফর্মুলা:
x̄ = Σ(x_i * w_i) / Σ(w_i)
যেখানে x = প্রাকৃতিক সংখ্যা, w = সংশ্লিষ্ট ওয়েট।
ইনপুট
X[] = {11, 22, 43, 34, 25, 16}
W[] = {12, 12, 43, 54, 75, 16}
আউটপুট − weighted mean is: 29.3019
ব্যাখ্যা − (11×12 + 22×12 + 43×43 + 34×54 + 25×75 + 16×16) / (12+12+43+54+75+16)
ইনপুট
X[] = {3,4,5,6,7}
W[] = {4,5,6,7,8}
আউটপুট − weighted mean is: 5.33333
প্রোগ্রামে ব্যবহৃত পদ্ধতি
- দুটি অ্যারে
X[]এবংW[]ইনপুট নিন। - ফর্মুলা অনুযায়ী ওয়েটেড মিন ক্যালকুলেট করুন।
- ফলাফল প্রিন্ট করুন।
অ্যালগরিদম
Start
function weightedmean(X, W, size)
sum = 0, weight = 0
for i=0 to size-1
weight += X[i]*W[i]
sum += W[i]
return (float)weight/sum
Stop
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
float weightedmean(int X[], int W[], int size) {
int sum = 0, weight = 0;
for (int i = 0; i < size; i++) {
weight += X[i] * W[i];
sum += W[i];
}
return (float)weight / sum;
}
int main() {
int X[] = {11, 22, 43, 34, 25, 16};
int W[] = {12, 12, 43, 54, 75, 16};
int size_X = sizeof(X)/sizeof(X[0]);
int size_W = sizeof(W)/sizeof(W[0]);
if (size_X == size_W)
cout << "weighted mean is: " << weightedmean(X, W, size_X);
else
cout << "-1";
return 0;
}
আউটপুট
weighted mean is: 29.3019