نطاقات
المتغيرات
أفعال

fabs, fabsf, fabsl

من cppreference.com
< c | numeric | math
 
 
 
دوال رياضية شائعة
الدوال
عمليات بسيطة
(C99)
(C99)
(C99)
(C99)
(C99)
(C99)(C99)(C99)
دوال أسية ولوغارتمية ثابتة الأساس
(C99)
(C99)
(C99)
(C99)
دوال أسية وجذور
(C99)
(C99)
دوال حساب المثلثات والدول الزائدية
(C99)
(C99)
(C99)
دالة الخطأ ودالة غاوس
(C99)
(C99)
(C99)
(C99)
إيجاد أقرب عدد صحيح لفاصلة عائمة (float)
(C99)(C99)(C99)
(C99)
(C99)(C99)(C99)
دوال التعديل على الفاصلة العائمة (float)
(C99)(C99)
(C99)
(C99)
التصنيف والمقارنة
(C99)
(C99)
(C99)
ثوابت ماكرو
 
<tbody> </tbody>
معرفة في ملف <math.h>
float fabsf( float arg );
(1) (منذ C99)
double fabs( double arg );
(2)
long double fabsl( long double arg );
(3) (منذ C99)
معرفة في ملف <tgmath.h>
#define fabs( arg )
(4) (منذ C99)
1-3) تحسب القيمة المطلقة لعدد ذو فاصلة عائمة ‎arg‎.
4) ماكرو عام النوع: إذا كان المعطى من النوع long double يتم استدعاء ‎fabsl‎. أما إذا كان المعطى عدد صحيح أو من النوع double يتم استدعاء ‎fabs‎. فيما عدا ذلك يتم استدعاء ‎fabsf‎. إذا كان المعطى عددا مركبا يتم استدعاء الدالة المركبة المناسبة (cabsf أو cabs أو cabsl).

المعطيات

arg - عدد ذو فاصلة عائمة

القيمة المُرجعة

في حالة النجاح يتم إرجاع القيمة المطلقة لـ‎arg‎ ‏‎ (‎|arg|‎)‎. القيمة المُرجعة دائما دقيقة ولا تختلف باختلاف وضع التقريب المستخدم.

التعامل مع الأخطاء

حيثيات التعامل مع الأخطاء المذكورة في math_errhandling لا تنطبق على هذه الدالة.

إذا كانت البيئة تدعم حسابات الفاصلة العائمة طبقا للـ IEEE (المعيار IEC 60559 تحديدا):

  • لو كان المعطى ±0, يتم إرجاع +0
  • لو كان المعطى ±∞, يتم إرجاع +∞
  • لو كان المعطى NaN, يتم إرجاع NaN

مثال

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

/* This numerical integration assumes all area is positive. */
#define PI 3.14159
double num_int (double a, double b,
                double f(double),
                unsigned n) {
    if (a == b) return 0.0;
    if (n == 0) n=1;   /* avoid division by zero */
    double h = (b-a)/n;
    double sum = 0.0;
    for (unsigned k=0; k < n; ++k)
        sum += h*fabs(f(a+k*h));
    return sum;
}

int main(void)
{
    printf("fabs(+3) = %f\n", fabs(+3.0));
    printf("fabs(-3) = %f\n", fabs(-3.0));
    // special values
    printf("fabs(-0) = %f\n", fabs(-0.0));
    printf("fabs(-Inf) = %f\n", fabs(-INFINITY));

    printf("%f\n", num_int(0.0,2*PI,sin,100000));

}

الخرج:

fabs(+3) = 3.000000
fabs(-3) = 3.000000
fabs(-0) = 0.000000
fabs(-Inf) = inf
4.000000

أنظر أيضا

تحسب القيمة المطلقة لعدد صحيح (|x|)
(دالة) [edit]
تولد قيمة جديد قيمتها المطلقة تكافئ معطى وإشارتها نفس إشارة المعطى الآخر
(دالة) [edit]
تفحص ماإذا كان العدد سالبا
(دالة) [edit]
(C99)(C99)(C99)
computes the magnitude of a complex number
(دالة) [edit]