English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
وظيفة مكتبة C double frexp(double x, int *exponent) يقسم عدد عشري إلى جزء العددي والمعادلة. القيمة المقدرة هي الجزء العددي، ويتم تخزين المعادلة في exponent هذا القيمة هي x = mantissa * 2 ^ exponent.
هذا هو إعلان وظيفة frexp().
double frexp(double x, int *exponent)
x -- القيمة العشرية التي سيتم حسابها.
exponent -- يشير إلى مرجع إلى العنصر الذي يحتوي على قيمة المعادلة.
هذه الوظيفة تعود بنسبة عدد عشري معياري. إذا كان المعامل x غير صفر، فإن النسبة العشرية المعيارية هي قوة x مربعة، ومدى قيمتها من 1/2 (بما في ذلك) إلى 1 (بما في ذلك). إذا كان x صفرًا، فإن النسبة العشرية المعيارية هي صفر، ويتم تخزين الصفر في exp.
هذا المثال يوضح استخدام وظيفة frexp().
#include <stdio.h> #include <math.h> int main () { double x = 2048, fraction; int e; fraction = frexp(x, &e); printf("x = %.2lf = %.2lf * 2^%d\n", x, fraction, e); return(0); }
لنقوم بترميز وتشغيل البرنامج أعلاه، مما سيولد النتيجة التالية:
x = 2048.00 = 0.50 * 2^12