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

গাণিতিক ঘাত বা পাওয়ার ধারণা ও প্রোগ্রাম (C++)

একটি সংখ্যার ঘাত বলতে সেই সংখ্যাকে নিজের সাথে কতবার গুণ করা হয়েছে সেটি বোঝায়। এটিকে এক্সপোনেন্ট বা ইন্ডেক্সও বলা হয়।

সাধারণ নিয়ম

  • যেকোনো সংখ্যার ০ ঘাত = ১
  • যেকোনো সংখ্যার ১ ঘাত = সেই সংখ্যাটি
  • নেগেটিভ ঘাত = বিপরীত গুণনफल, যেমন a⁻³ = 1/a³

সমস্যা

দুটি সংখ্যা N এবং a দেওয়া আছে। N কি a-এর কোনো ঘাতের সমান কিনা তা যাচাই করতে হবে।

উদাহরণ

ইনপুট: N = 64, a = 2

আউটপুট: হ্যাঁ (কারণ 2⁶ = 64)

সমাধান: রিকার্শিভ বিভাজন

N কে a দিয়ে বারবার ভাগ করুন। যদি শেষে ১ পাওয়া যায় এবং সব সময় পুরো ভাগ হয়, তবে N হলো a-এর ঘাত।

C++ প্রোগ্রাম

#include <iostream>
using namespace std;

bool isAPowerNumber(int x, long int y) {
    if (x == 1) return (y == 1);
    long int power = 1;
    while (power < y)
        power *= x;
    return (power == y);
}

int main() {
    int N = 625, a = 5;
    if (isAPowerNumber(a, N))
        cout << N << " " << a << "-এর ঘাত";
    else
        cout << N << " " << a << "-এর ঘাত নয়";
    return 0;
}

আউটপুট

625 5-এর ঘাত
  1. C++ দিয়ে n!-এ প্রাইম নাম্বার p-এর পাওয়ার (Power) বের করা

  2. Frugal সংখ্যা চেক করা (C++)

  3. C++ দিয়ে পেন্টাটপ (Pentatope) সংখ্যা বের করা

  4. সংখ্যার ঘাত (Power) বের করার C++ প্রোগ্রাম (রিকার্সিভ ও নন-রিকার্সিভ)