Hàm frexp convert số phẩy động về dạng số mũ

double frexp(double x,int *expptr);

Parameter:

x: tham số đầu vào double

expptr:  Con trỏ trỏ tới vùng nhớ lưu giá trị mũ ( exponent)

Remark:

  • Hàm frexp( ) chia nhỏ số dấu phẩy động x thành mantissa (m) và exponent( n). Trong đó, giá trị tuyệt đối của m ( 0.5 <= m < 1.0) và x = m*2^n. Số mũ n exponent được lưu tại vùng nhớ được trỏ tới bởi con trỏ expptr
  • Hàm frexp( ) trả về phần mantissa. Nếu x = 0, mantissa và exponent đều bằng 0. Nếu expptr = NULL, thì đầu vào không hợp lệ.

Ví dụ:

#include <math.h>
#include "conio.h"
#include <stdio.h>

int main( void )
{
    double x, y;
    int n;

    x = 16.4;
    y = frexp( x, &n );
    printf( "frexp( %f, &n ) = %f, n = %d\n", x, y, n );
    getch();
}

Kết quả:

Hàm frexp convert dấu phẩy động thành số mũ

Be the first to comment

Leave a Reply