fmax() y fmin() en C++

Las funciones fmax() y fmin() se definen en el archivo de encabezado cmath .

  1. Función fmax(): La sintaxis de esta función es:
    double fmax (double x, double y);
    float fmax (float x, float y);
    long double fmax (long double x, long double y);
    

    La entrada a esta función son dos valores de tipo float, double o long double. La función devuelve el máximo de los dos valores de entrada.

    A continuación se muestra un programa C++ de muestra para mostrar el funcionamiento de la función 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 << "\n";
      
        // Find maximum value when inputs have
        // opposite sign.
        val = fmax(-10.0, 1.0);
        cout << fixed << setprecision(4)
             << "fmax(-10.0, 1.0) = " << val << "\n";
      
        // 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 << "\n";
      
        return 0;
    }
    Producción:

    fmax(10.0, 1.0) = 10.0000
    fmax(-10.0, 1.0) = 1.0000
    fmax(-10.0, -1.0) = -1.0000
    
  2. Función fmin(): La sintaxis de esta función es:
    double fmin (double x, double y);
    float fmin (float x, float y);
    long double fmin (long double x, long double y);
    

    La entrada a esta función son dos valores de tipo float, double o long double. La función devuelve el mínimo de los dos valores de entrada.

    A continuación se muestra un programa C++ de muestra para mostrar el funcionamiento de la función 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 << "\n";
      
        // Find minimum value when inputs have
        // opposite sign.
        val = fmin(-10.0, 1.0);
        cout << fixed << setprecision(4)
             << "fmin(-10.0, 1.0) = " << val << "\n";
      
        // 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 << "\n";
      
        return 0;
    }
    Producción:

    fmin(10.0, 1.0) = 1.0000
    fmin(-10.0, 1.0) = -10.0000
    fmin(-10.0, -1.0) = -10.0000
    
  3. Nota: Considere un caso en el que los argumentos de la función son de diferentes tipos. En ese caso, los argumentos primero son encasillados implícitamente por la función y luego se devuelve el valor máximo/mínimo requerido.
    A continuación se muestra un programa C++ de muestra que ilustra este caso:

    // 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 << "\n";
      
        // 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 << "\n";
      
        return 0;
    }
    Producción:

    fmin(10.0f, 1.0) = 1.0000
    fmax(10.0, -1.0f) = 10.0000
    

Publicación traducida automáticamente

Artículo escrito por nik1996 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *