fmax () и fmin () в C ++
Функции fmax () и fmin () определены в заголовочном файле cmath.
- Функция fmax (): Синтаксис этой функции:
двойной fmax (двойной x, двойной y); float fmax (float x, float y); long double fmax (длинный двойной x, длинный двойной y);
Входными данными этой функции являются два значения типа float, double или long double. Функция возвращает максимум из двух входных значений.
Ниже приведен пример программы на C ++, демонстрирующей работу функции fmax ():
// CPP program to show working
// of fmax() function.
#include <cmath>
#include <iomanip>
#include <iostream>
using
namespace
std;
int
main()
{
double
val;
// Find maximum value when both the inputs
// are positive.
val = fmax(10.0, 1.0);
cout << fixed << setprecision(4)
<<
"fmax(10.0, 1.0) = "
<< val <<
" "
;
// Find maximum value when inputs have
// opposite sign.
val = fmax(-10.0, 1.0);
cout << fixed << setprecision(4)
<<
"fmax(-10.0, 1.0) = "
<< val <<
" "
;
// Find maximum value when both the inputs
// are negative.
val = fmax(-10.0, -1.0);
cout << fixed << setprecision(4)
<<
"fmax(-10.0, -1.0) = "
<< val <<
" "
;
return
0;
}
Выход:fmax (10,0; 1,0) = 10,0000 fmax (-10.0, 1.0) = 1.0000 fmax (-10,0, -1,0) = -1,0000
- Функция fmin (): Синтаксис этой функции:
двойной fmin (двойной x, двойной y); float fmin (float x, float y); длинный двойной фмин (длинный двойной х, длинный двойной у);
Входными данными этой функции являются два значения типа float, double или long double. Функция возвращает минимум из двух входных значений.
Ниже приведен пример программы на C ++, демонстрирующей работу функции fmin ():
// CPP program to show working
// of fmin() function.
#include <cmath>
#include <iomanip>
#include <iostream>
using
namespace
std;
int
main()
{
double
val;
// Find minimum value when both the inputs
// are positive.
val = fmin(10.0, 1.0);
cout << fixed << setprecision(4)
<<
"fmin(10.0, 1.0) = "
<< val <<
" "
;
// Find minimum value when inputs have
// opposite sign.
val = fmin(-10.0, 1.0);
cout << fixed << setprecision(4)
<<
"fmin(-10.0, 1.0) = "
<< val <<
" "
;
// Find minimum value when both the inputs
// are negative.
val = fmin(-10.0, -1.0);
cout << fixed << setprecision(4)
<<
"fmin(-10.0, -1.0) = "
<< val <<
" "
;
return
0;
}
Выход:fmin (10,0; 1,0) = 1,0000 fmin (-10.0, 1.0) = -10.0000 fmin (-10.0, -1.0) = -10.0000
Примечание: рассмотрим случай, когда аргументы функции имеют разные типы. В этом случае аргументы сначала неявно приводятся к типу функцией, а затем возвращается требуемое максимальное / минимальное значение.
Ниже приведен пример программы на C ++, иллюстрирующий этот случай:// CPP program to show working
// of fmin() and fmax()function
// when input values are of
// different data types.
#include <cmath>
#include <iomanip>
#include <iostream>
using
namespace
std;
int
main()
{
double
val;
// Find minimum value when one of the inputs
// is of type float and other is of type
// double.
val = fmin(10.0f, 1.0);
cout << fixed << setprecision(4)
<<
"fmin(10.0f, 1.0) = "
<< val <<
" "
;
// Find maximum value when one of the inputs
// is of type float and other is of type
// double.
val = fmax(10.0, -1.0f);
cout << fixed << setprecision(4)
<<
"fmax(10.0, -1.0f) = "
<< val <<
" "
;
return
0;
}
Выход:fmin (10.0f, 1.0) = 1.0000 fmax (10.0, -1.0f) = 10.0000
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .