The ratio_equal() is an inbuilt function in C++ STL that checks if two given ratios are equal or not. Syntax:
template < class ratio1_name, class ratio2_name > ratio_equal
Template Parameters: The function accepts two template parameters ratio1 and ratio2 which are to be compared. Return value: The function returns true if the ratios are equal otherwise it returns false.
Time Complexity: O(1)
Auxiliary Space: O(1)
Below programs illustrate the ratio_equal() function: Program 1:
CPP
// C++ program to illustrate the // ratio_equal function #include <iostream> #include <ratio> using namespace std;
int main()
{ typedef ratio<3, 9> ratio1;
typedef ratio<1, 3> ratio2;
// If both the ratios are same
if (ratio_equal<ratio1, ratio2>::value)
cout << "Both ratio are equal" ;
else
cout << "Both ratio are not equal" ;
return 0;
} |
Output:
Both ratio are equal
Program 2:
CPP
// C++ program to illustrate the // ratio_equal function #include <iostream> #include <ratio> using namespace std;
int main()
{ typedef ratio<1, 2> ratio1;
typedef ratio<5, 4> ratio2;
// If both the ratios are same
if (ratio_equal<ratio1, ratio2>::value)
cout << "Both ratio are equal" ;
else
cout << "Both ratio are not equal" ;
return 0;
} |
Output:
Both ratio are not equal