Search code examples
c++cmathceil

Rounding up and down a number C++


I'm trying to allow my program to round a number up and down respectively.

For example, if the number is 3.6, my program is suppose to round up the nearest number which is 4 and if the number is 3.4, it will be rounded down to 3.

I tried using the ceil library to get the average of 3 items.

results = ceil((marks1 + marks2 + marks3)/3)

However, the ceil only rounds the number down but does not roll the number up.

There's 1 algorithm i stumbled upon

var roundedVal = Math.round(origVal*20)/20;

but i still can't figure a formula for some problem.


Solution

  • std::ceil 
    

    rounds up to the nearest integer

    std::floor 
    

    rounds down to the nearest integer

    std::round 
    

    performs the behavior you expect

    please give a use case with numbers if this does not provide you with what you need!