std::lcm
From cppreference.com
Defined in header <numeric>


template< class M, class N> constexpr std::common_type_t<M, N> lcm(M m, N n); 
(since C++17)  
Computes the least common multiple of the integers m
and n
.
Contents 
[edit] Parameters
m, n    integer values 
[edit] Return value
If either m
or n
is zero, returns zero. Otherwise, return the least common multiple of m
and n
.
[edit] Remarks
If either M
or N
is not an integer type, or if either is (possibly cvqualified) bool, the program is illformed.
The behavior is undefined if
m
is not representable as a value of typeM
; orn
is not representable as a value of typeN
; or the least common multiple of
m
andn
is not representable as a value of typestd::common_type_t<M,N>
.
[edit] Exceptions
Throws no exceptions.
[edit] See also
(C++17) 
constexpr function template returning the greatest common divisor of two integers (function template) 