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

cosh, coshf, coshl

من 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 coshf( float arg );
(1) (منذ C99)
double cosh( double arg );
(2)
long double coshl( long double arg );
(3) (منذ C99)
معرفة في ملف <tgmath.h>
#define cosh( arg )
(4) (منذ C99)
1-3) تحسب جيب تمام الزاوية الزائدي ‎arg‎ (وحدة القياس هو القياس الدائري).
4) ماكرو عام النوع: إذا كان المعطى من النوع long double يتم استدعاء ‎coshl‎. أما إذا كان المعطى عدد صحيح أو من النوع double يتم استدعاء ‎cosh‎. فيما عدا ذلك يتم استدعاء ‎coshf‎. إذا كان المعطى عددا مركبا يتم استدعاء الدالة المركبة المناسبة (ccoshf أو ccosh أو ccoshl).

المعطيات

arg - عدد ذو فاصلة عائمة يعبر عن زاوية مقاسة بالتقدير الدائري

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

في حالة النجاح, تُرجع جيب تمام الزاوية الزائدي ‎arg‎ أي

earg
+e-arg
2

.

لو كان الفشل نتيجة للطفح (Overflow) يتم إرجاع ‎±HUGE_VAL‎ أو ‎±HUGE_VALF‎ أو ‎±HUGE_VALL‎.

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

يتم الإبلاغ عن الأخطاء كما هو موضح في math_errhandling.

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

  • لو كان المعطى ±0 أو ±∞ يتم إرجاعه دون تعديل
  • لو كان المعطى NaN يتم إرجاع NaN

ملحوظات

يحدث طفح للنوع double الموافق لمعيار الـ IEEE عندما تكون الزاوية ‎ |arg| > 710.5‎.

مثال

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

#pragma STDC FENV_ACCESS ON
int main(void)
{
    printf("cosh(1) = %f\ncosh(-1)= %f\n", cosh(1), cosh(-1));
    printf("log(sinh(1) + cosh(1))=%f\n", log(sinh(1)+cosh(1)));
    // special values
    printf("cosh(+0) = %f\ncosh(-0) = %f\n", cosh(0.0), cosh(-0.0));
    // error handling 
    errno=0; feclearexcept(FE_ALL_EXCEPT);
    printf("cosh(710.5) = %f\n", cosh(710.5));
    if(errno == ERANGE) perror("    errno == ERANGE");
    if(fetestexcept(FE_OVERFLOW)) puts("    FE_OVERFLOW raised");
}

خرج ممكن:

cosh(1) = 1.543081
cosh(-1)= 1.543081
log(sinh(1) + cosh(1))=1.000000
cosh(+0) = 1.000000
cosh(-0) = 1.000000
cosh(710.5) = inf
    errno == ERANGE: Numerical result out of range
    FE_OVERFLOW raised

أنظر أيضا

(C99)(C99)
تحسب جيب الزاوي الزائدي ‎(sh(x))‎
(دالة) [edit]
(C99)(C99)
تحسب ظل الزاوية الزائدي
(دالة) [edit]
(C99)(C99)(C99)
تحسب معكوس جيب تمام الزاوية الزائدي (قاطع الزاوية الزائدي) (arcosh(x))
(دالة) [edit]
(C99)(C99)(C99)
تحسب جيب تمام الزاوية المركبة الزائدي
(دالة) [edit]