Thrill  0.1
div_ceil.hpp
Go to the documentation of this file.
1 /*******************************************************************************
2  * tlx/math/div_ceil.hpp
3  *
4  * Part of tlx - http://panthema.net/tlx
5  *
6  * Copyright (C) 2016-2017 Timo Bingmann <[email protected]>
7  *
8  * All rights reserved. Published under the Boost Software License, Version 1.0
9  ******************************************************************************/
10 
11 #ifndef TLX_MATH_DIV_CEIL_HEADER
12 #define TLX_MATH_DIV_CEIL_HEADER
13 
14 namespace tlx {
15 
16 //! \addtogroup tlx_math
17 //! \{
18 
19 /******************************************************************************/
20 // div_ceil() - calculate n div k with rounding up
21 
22 //! calculate n div k with rounding up, for n and k positive!
23 template <typename IntegralN, typename IntegralK>
24 static inline constexpr
25 auto div_ceil(const IntegralN& n, const IntegralK& k)->decltype(n + k) {
26  return (n + k - 1) / k;
27 }
28 
29 //! \}
30 
31 } // namespace tlx
32 
33 #endif // !TLX_MATH_DIV_CEIL_HEADER
34 
35 /******************************************************************************/
static constexpr auto div_ceil(const IntegralN &n, const IntegralK &k) -> decltype(n+k)
calculate n div k with rounding up, for n and k positive!
Definition: div_ceil.hpp:25