কম্পিউটার টিউটোরিয়াল

C++-তে হারমোনিক মিন (Harmonic Mean) বের করা


একটি প্রাকৃতিক সংখ্যা অ্যারে দেওয়া আছে। এর হারমোনিক মিন বের করে প্রিন্ট করতে হবে।

হারমোনিক মিন কী?

হারমোনিক মিন হলো রেসিপ্রোকাল গড়ের রেসিপ্রোকাল।

ফর্মুলা: H = n / (1/a + 1/b + 1/c + ...)

যেখানে n = এলিমেন্ট সংখ্যা, a,b,c... = অ্যারে এলিমেন্ট।

স্টেপস:

  1. প্রতিটি এলিমেন্টের রেসিপ্রোকাল (১/এলিমেন্ট) নিন।
  2. সেগুলো যোগ করুন।
  3. এলিমেন্ট সংখ্যা (n) কে যোগফল দিয়ে ভাগ করুন।

ইনপুট − arr[] = {2.0, 3.4, 5.3, 2.1}

আউটপুট − Harmonic mean is: 2.74163

ইনপুট − arr[] = {13.5, 14.5, 14.8, 15.2, 16.1}

আউটপুট − Harmonic mean is: 14.7707

অ্যালগরিদম

Start
function harmonic_mean(arr, size)
  sum = 0
  for i=0 to size-1: sum += 1.0/arr[i]
  return size/sum
Stop

উদাহরণ

#include <bits/stdc++.h>
using namespace std;

float harmonic_mean(float arr[], int size) {
    float sum = 0;
    for (int i = 0; i < size; i++)
        sum += 1.0f / arr[i];
    return (float)size / sum;
}

int main() {
    float arr[] = {2.0, 3.4, 5.3, 2.1};
    int size = sizeof(arr)/sizeof(arr[0]);
    cout << "Harmonic mean is: " << harmonic_mean(arr, size);
    return 0;
}

আউটপুট

Harmonic mean is: 2.74163
  1. C++-তে মিন এব্সোলিউট ডেভিয়েশন (Mean Absolute Deviation) বের করা

  2. বাইসেকশন মেথড (Bisection Method) C++ প্রোগ্রাম

  3. C++-এ প্রথম n প্রাকৃতিক সংখ্যার বর্গের যোগফল (Sum of Squares)

  4. C++-এ দুটি সংখ্যার কমন ডিভাইজর (Common Divisors of Two Numbers)