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

C প্রোগ্রাম: লগারিদম (log₂ n) গণনা করুন

সংক্ষিপ্ত বিবরণ

এই প্রোগ্রামটি একটি ধনাত্মক পূর্ণসংখ্যার বেস-২ লগারিদম (log₂ n) রিকার্সিভ পদ্ধতিতে গণনা করে।

গাণিতিক সূত্র

log₂ n = y  অর্থাৎ  2ʸ = n

অ্যালগরিদম (রিকার্সিভ)

log2n(n) = 0                    যদি n ≤ 1
log2n(n) = 1 + log2n(n / 2)     যদি n > 1

উদাহরণ

  • log₂ 20 = 4 (কারণ 2⁴ = 16 ≤ 20 < 32 = 2⁵)
  • log₂ 64 = 6 (কারণ 2⁶ = 64)

সি কোড

#include <stdio.h>

unsigned int log2n(unsigned int n) {
    return (n > 1) ? 1 + log2n(n / 2) : 0;
}

int main() {
    unsigned int num = 20;
    printf("%u\n", log2n(num));
    return 0;
}

আউটপুট

4
  1. C প্রোগ্রাম: ম্যাট্রিক্স বিয়োগ (Subtraction of Matrices)

  2. C প্রোগ্রাম: অ্যারে প্যালিনড্রোম কিনা চেক করা

  3. C প্রোগ্রাম: প্লাস পারফেক্ট নম্বর (Plus Perfect Number) চেক করা

  4. C প্রোগ্রাম: আর্মস্ট্রং নাম্বার (Armstrong Number) যাচাই