C/C++ 取整

C / C + + 上取整与下取整 C/C++上取整与下取整 C/C++上取整与下取整

int a, b;
//   求a/b的上取整和下取整结果
一、手动实现
  • 下取整:C++中整数的除法默认是下取整的,直接除即可。

    cout << a/b << endl;
    
  • 上取整 = { a 能整除 b 时 : a / b a 不能整除 b 时 : a / b + 1 = > ( a − 1 ) / b + 1    o r    ( a + b − 1 ) / b 上取整=\begin{cases} a能整除b时: a/b\\ \\ a不能整除b时: a/b+1 \end{cases} => (a-1)/b+1\ \ or \ \ (a+b-1)/b 上取整= a能整除b:a/ba不能整除b:a/b+1=>(a1)/b+1  or  (a+b1)/b

  • 上取整公式

    cout << (a-1)/b+1 << endl;
    
二、math.h 数学库
  • 下取整:double floor(double x)

    cout << floor((double)a/b) << endl;
    
  • 上取整:double ceil(double x)

 cout << ceil((double)a/b) << endl;
补充

四舍五入:double round(double x)

cout << round((double)a/b) << endl;

你可能感兴趣的:(c++,c语言,算法)