estándar::gcd | Función incorporada de C++ para encontrar GCD

En muchos problemas de programación competitivos, necesitamos encontrar el máximo común divisor, también conocido como mcd . El algoritmo de Euclides para encontrar gcd se ha discutido aquí .
C++ tiene la función incorporada para calcular GCD. Esta función está presente en el archivo de encabezado. 
Sintaxis para C++14:

 Library: 'algorithm'
 __gcd(m, n) 
Parameter :  m, n
Return Value :  0 if both m and n are zero, 
else gcd of m and n.

Sintaxis para C++17:

Library: 'numeric'
gcd(m, n)
Parameter :  m, n
Return Value :  0 if both m and n are zero,
else gcd of m and n.

CPP

// CPP program to illustrate
// gcd function of C++ STL
#include <iostream>
#include <algorithm>
// #include<numeric> for C++17
 
using namespace std;
 
int main()
{
    cout << "gcd(6, 20) = " << __gcd(6, 20) << endl; // gcd(2.0,8) for C++17
}
Producción

gcd(6, 20) = 2

Complejidad de tiempo: O (logn)

Espacio Auxiliar: O(1)

Nota: Si M o N no es un tipo entero, o si cualquiera es (posiblemente calificado como cv) bool, el programa está mal formado. Además, si bien |m| o |n| no se puede representar como un valor de tipo std::common_type_t, el comportamiento no está definido. 
 

CPP

// CPP program to illustrate
// undefined behavior of
// gcd function of C++ STL
#include <iostream>
#include <algorithm>
// #include<numeric> for C++17
 
using namespace std;
 
int main()
{
    cout << "gcd(6, 20) = " << __gcd(2.0, 8) << endl; // gcd(2.0,8) for C++17
}

Salida: 
Error, ya que el tipo de datos flotante no es compatible con std::gcd.
Este artículo es una contribución de Pratik Chhajer . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 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 *