hypot(3)

الاسم
hypot, hypotf, hypotl - دالة المسافة الإقليدية

المكتبة
مكتبة الرياضيات (libm، -lm)

موجز
#include <math.h>

double hypot(double x, double y);
float hypotf(float x, float y);
long double hypotl(long double x, long double y);

    متطلبات ماكروات اختبار الميزات لـ glibc (انظر feature_test_macros(7)):

hypot():
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
        || _XOPEN_SOURCE
        || /* منذ glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

hypotf(), hypotl():
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
        || /* Since glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

الوصف
ترجع هذه الدوال sqrt(x*x+y*y). هذا هو طول الوتر في مثلث قائم الزاوية أضلاعه بطول x و y، أو مسافة النقطة (x,y) من نقطة الأصل.

يُجرى الحساب دون فيض أو تدفق سفلي مفرط أثناء الخطوات الوسيطة للحساب.

قيمة الإرجاع
عند النجاح، ترجع هذه الدوال طول وتر مثلث قائم الزاوية أضلاعه بطول x و y.

إذا كان x أو y لا نهائيًا، يُرجع لا نهائي موجب.

إذا كان x أو y قيمة NaN، ولم تكن الوسيطة الأخرى لا نهائية، تُرجع قيمة NaN.

إذا تجاوزت النتيجة السعة، يحدث خطأ في النطاق، وتعيد الدوال HUGE_VAL أو HUGE_VALF أو HUGE_VALL على التوالي.

إذا كانت كلتا الوسيطتين دون معيارية، وكانت النتيجة دون معيارية، يحدث خطأ نطاق، وتُعاد النتيجة الصحيحة.

الأخطاء
انظر math_error(7) لمعلومات حول كيفية تحديد ما إذا كان قد حدث خطأ عند استدعاء هذه الدوال.

الأخطاء التالية يمكن أن تحدث:

خطأ في النطاق: طفح في النتيجة
    تُضبط errno على ERANGE. وُيرفع استثناء تجاوز نقطة عائمة (FE_OVERFLOW).

خطأ في النطاق: فيض تحتي في النتيجة
    رُفع استثناء نقص تدفق نقطة عائمة (FE_UNDERFLOW).

    لا تضبط هذه الدوال errno لهذه الحالة.

السمات
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
الواجهة | السمة | القيمة
hypot(), hypotf(), hypotl() | سلامة الخيوط | MT-Safe

المعايير
C11, POSIX.1-2008.

التاريخ
C99، POSIX.1-2001.

النسخة التي تُعيد double تتوافق أيضًا مع SVr4، و 4.3BSD.

انظر أيضًا
cabs(3), sqrt(3)

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.