logo

Manipulaciones de proporciones en C++ | Conjunto 2 (Comparación)

Requisito previo - Manipulaciones de proporciones en C++ | Conjunto 1 (Aritmética)
En C++ el El archivo de encabezado nos permite manipular proporciones utilizando varios alias de plantilla incorporados. El archivo de encabezado se introdujo desde C++ 11 en adelante. En este artículo discutiremos la comparación de manipulaciones de proporciones en C++. Se utilizan las siguientes funciones:

  • proporción_igual
  • relación_no_igual
  • ratio_mayor
  • ratio_less
  • relación_mayor_igual
  • relación_menos_igual

1. proporción_igual: Este alias de plantilla comprueba si el ratios en sus argumentos son iguales . Devuelve verdadero si es igual; de lo contrario, devuelve falso. Devuelve un miembro booleano constante 'valor'
2. ratio_not_equal: Este alias de plantilla comprueba si el ratios en sus argumentos son no igual . Devuelve verdadero si no es igual; de lo contrario, si es igual, devuelve falso. Devuelve un miembro booleano constante 'valor' .  



CPP
// C++ code to demonstrate the working of // ratio_equal and ratio_not_equal #include    #include  // for ratio manipulation using namespace std; // Driver Code int main() {  // Declaring ratios  typedef ratio<10 100> ratio1;  typedef ratio<1 10> ratio2;  // Checking if ratios are equal using ratio_equal  ratio_equal<ratio1 ratio2>::value  ? cout << 'Ratios are equal'  : cout << 'Ratios are not equal';  cout << endl;  // Checking if ratios are not equal using  // ratio_not_equal  ratio_not_equal<ratio1 ratio2>::value  ? cout << 'Ratios are not equal'  : cout << 'Ratios are equal';  return 0; } 

Producción
Ratios are equal Ratios are equal

3. proporción_mayor: Este alias temporal comprueba si ratio1 es mayor que ratio2 . Él devuelve un miembro booleano constante 'valor' que devuelve verdadero si la relación1 es mayor que la relación2; de lo contrario, devuelve falso.
4. ratio_less: Este alias temporal comprueba si ratio1 es menor que ratio2 . Él devuelve un miembro booleano constante 'valor' que devuelve verdadero si la relación1 es menor que la relación2; de lo contrario, devuelve falso. 

CPP
// C++ code to demonstrate the working of // ratio_greater and ratio_less #include    #include  // for ratio manipulation using namespace std; // Driver Code int main() {  // Declaring ratios  typedef ratio<10 100> ratio1;  typedef ratio<11 100> ratio2;  // Checking if ratio1 is greater than ratio2  // using ratio_greater  ratio_greater<ratio1 ratio2>::value  ? cout << 'ratio1 is greater than ratio2'  : cout << 'ratio1 is not greater than ratio2';  cout << endl;  // Checking if ratio1 is less than ratio2  // using ratio_less  ratio_less<ratio1 ratio2>::value  ? cout << 'ratio1 is less than ratio2'  : cout << 'ratio1 is not less than ratio2';  cout << endl;  return 0; } 

Producción
ratio1 is not greater than ratio2 ratio1 is less than ratio2

5. relación_mayor_igual: Este alias temporal comprueba si ratio1 es mayor o igual que ratio2 . Él devuelve un miembro booleano constante 'valor' que devuelve verdadero si la relación1 es mayor o igual que la relación2; de lo contrario, devuelve falso.
6. ratio_less_equal: Este alias temporal comprueba si ratio1 es menor o igual que ratio2 . Él devuelve un miembro booleano constante 'valor' que devuelve verdadero si la relación1 es menor o igual que la relación2; de lo contrario, devuelve falso. 

CPP
// C++ code to demonstrate the working of // ratio_greater_equal and ratio_less_equal #include    #include  // for ratio manipulation using namespace std; // Driver Code int main() {  // Declaring ratios  typedef ratio<10 100> ratio1;  typedef ratio<1 10> ratio2;  // Checking if ratio1 is greater or equal than ratio2  // using ratio_greater_equal  ratio_greater_equal<ratio1 ratio2>::value  ? cout << 'ratio1 is greater or equal than ratio2'  : cout << 'ratio1 is not greater or equal than '  'ratio2';  cout << endl;  // Checking if ratio1 is less or equal than ratio2  // using ratio_less_equal  ratio_less_equal<ratio1 ratio2>::value  ? cout << 'ratio1 is less or equal than ratio2'  : cout << 'ratio1 is not less or equal than ratio2';  cout << endl;  return 0; } 

Producción
ratio1 is greater or equal than ratio2 ratio1 is less or equal than ratio2