ГЛАВА 8 – Математични функции в С
Стандартната библиотека на С съдържа различни математични функции които попадат в следните категории :
-
Тригонометрични функции
-
Хиперболични функции
-
Експоненциални и логаритмични функции
-
Разнообразни функции
Всички математични функции изискват хедърния файл MATH .H . В добавка към декларираните математични функции този хедър дефинира и три макроса наречени EDOM , ERANGE и HUGE_VAL . Ако аргумента на математична функция не в областта за която е дефиниран се връща имплементационно – зависима стойност и вградената глобална integer променлива errno се установява на EDOM . Ако функцията изчисли резултат който е прекалено голям за да бъде побран от double се получава препълване . Това предизвиква функцията да върне HUGE_VAL и errno се установява на ERANGE показвайки грешка в областта . Ако стане преминаване под долната граница , функцията връща 0 и установява errno на ERANGE . Всички ъгли са в радиани .
acos ( )
# include < math . h >
double acos ( double arg ) ;
Функцията acos ( ) връща аркускосинус от arg . Аргумента на acos ( ) трябва да бъде в интервала от -1 до 1 , иначе се получава грешка в областта . Свързани функции са asin ( ) , atan ( ) , atan2 ( ) , sin ( ) , cos ( ) , tan ( ) , sinh ( ) ,cosh ( ) и tanh ( ) .
asin ( )
# include < math . h >
double asin ( double arg ) ;
Функцията asin ( ) връща аркуссинус от arg . Аргумента на asin ( ) трябвa да бъде в интервала от -1 до 1 , иначе се получава грешка в областта . Свързани функции са acos ( ) , atan ( ) , atan2 ( ) , sin ( ) , cos ( ) , tan ( ) , sinh ( ) ,cosh ( ) и tanh ( )
atan ( )
# include < math . h >
double atan ( double arg ) ;
Функцията atan ( ) връща аркустангенс от arg . Свързани функции са asin ( ) , acos ( ) , atan2 ( ) , sin ( ) , cos ( ) , tan ( ) , sinh ( ) ,cosh ( ) и tanh ( )
atan2 ( )
# include < math . h >
double atan2 ( double y , double x ) ;
Функцията atan2 ( ) връща аркустангенс от y / x . Тя използва знаците на аргументите си за да изчисли квадранта на връщаната стойност . Свързани функции са asin ( ) , acos ( ) , atan ( ) , sin ( ) , cos ( ) , tan ( ) , sinh ( ) ,cosh ( ) и
tanh ( )
ceil ( )
# include < math . h >
double ceil ( double num ) ;
Функцията ceil ( ) връща най – малкото цяло число ( предствено като double ) не по – малко от num . Например подаваме 1.02 ceil ( ) ще върне 2.0 . Подаваме -1.02 ceil ( ) ще върне -1 . Свързани функции са floor ( ) и fmod ( ) .
cos ( )
# include < math . h >
double cos ( double arg ) ;
Функцията cos ( ) връща косинуса от arg . Стойността на arg трябва да бъде в радиани . Свързани функции са asin ( ) , acos ( ) , atan ( ) , atan2 ( ) , tan ( ) , sin ( ) , sinh ( ) ,cosh ( ) и tanh ( ) .
cosh ( )
# include < math . h >
double cosh ( double arg ) ;
Функцията cosh ( ) връща хиперболичен косинус от arg . Свързани функции са asin ( ) , acos ( ) , atan ( ) , atan2 ( ) , tan ( ) , sin ( ) , sinh ( ) ,cos ( ) и tanh ( ) .
exp ( )
# include < math . h >
double exp ( double arg ) ;
Функцията exp ( ) връща естествен логаритъм е повдигнат на степен arg . Свързана функция е log ( ) .
fabs ( )
# include < math . h >
double fabs ( double num ) ;
Функцията fabs ( ) връща абсолютната стойност на num . Свързана функция е abs ( ) .
floor ( )
# include < math . h >
double floor ( double num ) ;
Функцията floor ( ) връща най – голямото число ( представено като double ) не по – голямо от num . Например подаваме 1.02 floor ( ) ще върне 1.0 . Подаваме
-1.02 floor ( ) ще върне -2.0 . Свързани функции са ceil ( ) и fmod ( ) .
fmod ( )
# include < math . h >
double fmod ( double y , double x ) ;
Функцията fmod ( ) връща остатъка от x / y . Свързани функции са ceil ( ) ,
floor ( ) и fabs ( ) .
frexp ( )
# include < math . h >
double frexp ( double num , int *exp ) ;
Функцията frexp ( ) разлага числото num на мантиса в интервала от 0.5 до 1 и цяла степен така че num = mantissa * 2exp . Мантисата се връща от функцията , а експонентата се съхранява в променлива указвана от exp . Свързана функция е ldexp ( ) .
ldexp ( )
# include < math . h >
double ldexp ( double num , int *exp ) ;
Функцията ldexp ( ) връща стойността на num * 2exp . Ако стане препълване се връща HUGE_VAL . Свързани функции са frexp ( ) и modf ( ) .
log ( )
# include < math . h >
double log ( double num ) ;
Функцията log ( ) връща естествен логаритъм от num . Грешка в областта се получава ако num е отрицателно , а грешка в интервала става ако аргумента е 0 . Свързана функция е log10 ( ) .
log10 ( )
# include < math . h >
double log10 ( double num ) ;
Функцията log10 ( ) връща десетичен логаритъм от num . Грешка в областта се получава ако num е отрицателно , а грешка в интервала става ако аргумента е 0 . Свързана функция е log ( ) .
modf ( )
# include < math . h >
double modf ( double num , double *i ) ;
Функцията modf ( ) разлага num на цяла и дробна част . Тя връща дробната част и слага цялата част в променливата указвана от i . Свързани функции са frexp ( ) и ldexp ( ) .
pow ( )
# include < math . h >
double pow ( double base , double exp ) ;
Функцията pow ( ) връща base повдигната на степен exp ( baseexp ) . Грешка в областта може да стане ако base е 0 и exp е по-малко или равно на 0 . Същото ще се получи ако base е отрицателно и exp не е цяло . Препълване предизвиква грешка в интервала . Свързани функции са exp ( ) , log ( ) и sqrt ( )
sin ( )
# include < math . h >
double sin ( double arg ) ;
Функцията sin ( ) връща синуса от arg . Стойността на arg трябва да бъде в радиани . Свързани функции са asin ( ) , acos ( ) , atan ( ) , atan2 ( ) , tan ( ) , cos ( ) , sinh ( ) ,cosh ( ) и tanh ( ) .
sinh ( )
# include < math . h >
double sinh ( double arg ) ;
Функцията sinh ( ) връща хиперболичен синус от arg . Свързани функции са asin ( ) , acos ( ) , atan ( ) , atan2 ( ) , tan ( ) , cosh ( ) , sin ( ) ,cos ( ) и tanh ( ) .
sqrt ( )
# include < math . h >
double sqrt ( double num ) ;
Функцията sqrt ( ) връща корен квадратен от num . Ако се извика с oтрицателен аргумент се получава грешка в областта . Свързани функции са exp ( ) , log ( ) и pow ( ) .
tan ( )
# include < math . h >
double tan ( double arg ) ;
Функцията tan ( ) връща тангенс от arg . Стойността на arg трябва да бъде в радиани . Свързани функции са asin ( ) , acos ( ) , atan ( ) , atan2 ( ) , cos ( ) , sin ( ) , sinh ( ) , cosh ( ) и tanh ( ) .
tanh ( )
# include < math . h >
double tanh ( double arg ) ;
Функцията tanh ( ) връща хиперболичен тангенс от arg . Свързани функции са asin ( ) , acos ( ) , atan ( ) , atan2 ( ) , sin ( ) , cos ( ) , sinh ( ) ,cosh ( ) и tan ( ) .
Сподели с приятели: |