এই সেকশনে আমরা দেখব, একটি সংখ্যা ৮-এর ঘাত কিনা তা কিছু সহজ পদ্ধতিতে যাচাই করা। যদি ৪০৯৬ जैसी সংখ্যা থাকে, তবে প্রোগ্রামটি true রিটার্ন করবে, কারণ এটি ৮-এর ঘাত।
ট্রিকটি সহজ: আমরা log₈(num) ক্যালকুলেট করব। যদি এটি একটি ইন্টিজার হয়, তবে n ৮-এর ঘাত। এখানে tranc(n) ফাংশন ব্যবহার করে ডাবল ভ্যালুর নিকটতম ইন্টিজার বের করা হয়েছে।
উদাহরণ
#include <iostream> #include <cmath> using namespace std; bool isPowerOfEight(int n) { double val = log(n)/log(8); //get log n to the base 8 return (val - trunc(val) < 0.000001); } int main() { int number = 4096; if(isPowerOfEight(number)){ cout << number << " is power of 8"; } else { cout << number << " is not power of 8"; } }আউটপুট
4096 is power of 8