একটি অনসর্টেড অ্যারে দেওয়া আছে। এর মিন (গড়) এবং মেডিয়ান (মধ্যমান) বের করতে হবে।
মিন (Mean) বের করার নিয়ম
মিন = (সব এলিমেন্টের যোগফল) / (এলিমেন্টের মোট সংখ্যা)
মেডিয়ান (Median) বের করার নিয়ম
যদি অ্যারে সর্টেড থাকে:
- অড্ড সংখ্যক এলিমেন্ট হলে মিডল এলিমেন্টই মেডিয়ান।
- ইভেন সংখ্যক এলিমেন্ট হলে দুটি মিডল এলিমেন্টের গড়।
ইনপুট − arr[] = {3,5,2,1,7,8}
আউটপুট − Mean: 4.33333, Median: 4
ইনপুট − arr[] = {1,3,4,2,6,5,8,7}
আউটপুট − Mean: 4.5, Median: 4.5
অ্যালগরিদম
Start function mean(arr, size) sum = 0 for i=0 to size-1: sum += arr[i] return (double)sum/size function median(arr, size) sort(arr, arr+size) if size%2 != 0: return arr[size/2] else: return (arr[(size-1)/2] + arr[size/2])/2.0 Stop
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
double mean(int arr[], int size) {
int sum = 0;
for (int i = 0; i < size; i++) sum += arr[i];
return (double)sum / size;
}
double median(int arr[], int size) {
sort(arr, arr + size);
if (size % 2 != 0) return (double)arr[size/2];
return (double)(arr[(size-1)/2] + arr[size/2]) / 2.0;
}
int main() {
int arr[] = {3,5,2,1,7,8};
int size = sizeof(arr)/sizeof(arr[0]);
cout << "Mean is: " << mean(arr, size) << endl;
cout << "Median is: " << median(arr, size) << endl;
return 0;
}
আউটপুট
Mean is: 4.33333 Median is: 4