frexp() ফাংশনটি একটি ফ্লোটিং পয়েন্ট নম্বরকে এর বাইনারি সিগনিফিকান্ড এবং ২-এর জন্য ইন্টিজার এক্সপোনেন্টে ভাঙতে ব্যবহৃত হয়। এটি বাইনারি সিগনিফিকান্ড রিটার্ন করে যার রেঞ্জ (0.5, 1)। যদি শূন্য মান পাস করা হয়, তবে এর সিগনিফিকান্ড এবং এক্সপোনেন্ট দুটোই শূন্য হবে।
frexp()-এর গাণিতিক অভিব্যক্তি:
x = significand * (2^exponent)
C++-এ frexp()-এর সিনট্যাক্স:
float frexp(float variable_name, int* exponent);
এখানে,
variable_name — বাইনারি সিগনিফিকান্ড-এ ডিকম্পোজ করার ফ্লোটিং নম্বর ধারণকারী ভেরিয়েবলের নাম।
exponent — এক্সপোনেন্টের মান স্টোর করার জন্য int-এ পয়েন্টার।
C++-এ frexp()-এর উদাহরণ:
উদাহরণ
#include <iostream>
#include <math.h>
using namespace std;
int main() {
double a = 4;
int* b;
cout << "Value of a: " << a << '\n';
double s = frexp(a, b);
std::cout << a << " = " << s << " * " << "2^" << *b;
return 0;
}
আউটপুট
Value of a: 4 4 = 0.5 * 2^3