remquo, remquof, remquol – вычисление частного и остатка от деления.
Синтаксис:
#include < math.h >
double remquo (double x, double y, int *c);
float remquof (float x, float y, int *c);
long double remquol (long double x, long double y, int *c);
Аргументы:
x – делимое.
y - делитель.
c – указатель на переменную в которую будет помещено частное.
Возвращаемое значение:
Остаток от деления x на y.
Если y= 0, то возвращаемому значению присваивается nan, а переменной errno будет присвоен код ошибки EDOM.
Описание:
Функция рассчитывает частное и остаток от деления x на y. Остаток от деление возвращается функцией, а частное помещается по адресу указанному в аргументе c.
При этом первые два аргумента и возвращаемое значение функции remquo () задаются числами с плавающей точкой двойной точности (тип double, точность не менее десяти значащих десятичных цифр, разрядность - 64).
Первые два аргумента и возвращаемое значение функции remquof () задаются числами с плавающей точкой (тип float, точность не менее шести значащих десятичных цифр, разрядность - 32).
Первые два аргумента и возвращаемое значение функции remquol () задаются числами с плавающей точкой повышенной точности (тип long double, точность не менее десяти значащих десятичных цифр, разрядность - 80).
Пример:
В примере рассчитывается частное и остаток от деления 456.876 на 32.957 с помощью функций remquo, remquof, remquol, и результат выводится на консоль. Обратите внимание на точность полученных результатов.
#include < stdio.h > //Для printf
#include < math.h > //Для remquo ,remquof, remquol
int main (void)
{
//Переменные, в которые будет помещен результат.
int cha1=0,cha2=0,cha3=0;
float ost1=0;
double ost2=0;
long double ost3=0;
//Расчет частного и остатка от деления
ost1=remquof (456.876, 32.957,&cha1);
ost2=remquo (456.876, 32.957,&cha2);
ost3=remquol (456.876, 32.957,&cha3);
//Вывод значения аргумента
printf (“Делимое: 456.876, делитель: 32.957\n”);
//Вывод заголовка столбцов
printf (“ Частное Остаток\n”);
//Вывод результата работы функции remquof
printf (“remquof : %d %.10f\n”, cha1,ost1);
//Вывод результата работы функции remquo
printf (“remquo : %d %.10f\n”, cha2,ost2);
//Вывод результата работы функции remquol
printf (“remquofl: %d %.10Lf\n”, cha3,ost3);
return 0;
}
| |
Результат:
Делимое: 456.876, делитель: 32.957
Частное Остаток
remquof: 14 -4.5220031738
remquo : 14 -4.5220000000
remquol: 14 -4.5220000000
|
Смотри так же:
fmod, fmodf, fmodl
remainder, remainderf, remainderl
drem, dremf, dreml
remquo, remquof, remquol
|