প্রাকৃতিক সংখ্যার একটি অ্যারে এবং সংশ্লিষ্ট প্রাকৃতিক সংখ্যার ওজন সহ আরও একটি অ্যারে দেওয়া হয়েছে এবং কাজটি হল প্রাকৃতিক সংখ্যার ওজনযুক্ত গড় গণনা করা৷
একটি সূত্র আছে যা প্রাকৃতিক সংখ্যার ওজনযুক্ত গড় গণনার জন্য ব্যবহৃত হয়।
$$\overline{x}=\frac{\displaystyle\sum\limits_{i=1}^n (x_{i*}w_{i})}{\displaystyle\sum\limits_{i=1}^n 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
ব্যাখ্যা
(3*4 + 4*5 + 5*6 + 6*7 + 7*8) / (4 + 5 + 6 + 7 + 8)
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
দুটি ভিন্ন অ্যারে ইনপুট করুন, একটি প্রাকৃতিক সংখ্যার জন্য এবং অন্যটি সংশ্লিষ্ট প্রাকৃতিক সংখ্যার ওজনের জন্য৷
-
প্রাকৃতিক সংখ্যার ওজনযুক্ত গড় গণনা করতে সূত্রটি প্রয়োগ করুন
-
সংশ্লিষ্ট ফলাফল প্রিন্ট করুন।
অ্যালগরিদম
Start
Step1→ declare function to calculate weighted means of natural numbers
float weightedmean(int X[], int W[], int size)
Declare int sum = 0, weight = 0
Loop For int i = 0 and i < size and i++
Set weight = weight + X[i] * W[i]
Set sum = sum + W[i]
End
return (float)weight / sum
Step 2→ In main()
Declare int X[] = {11, 22, 43, 34, 25, 16}
Declare int W[] = {12, 12, 43, 54, 75, 16}
Declare int size_X = sizeof(X)/sizeof(X[0])
Declare int size_W = sizeof(W)/sizeof(W[0])
IF (size_X == size_W)
Call weightedmean(X, W, size_X)
End
Else
Print -1
End
Stop উদাহরণ
#include<bits/stdc++.h>
using namespace std;
//calculate weighted mean.
float weightedmean(int X[], int W[], int size){
int sum = 0, weight = 0;
for (int i = 0; i < size; i++){
weight = weight + X[i] * W[i];
sum = 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