Rounding up to 2 decimal places in C#

前端 未结 5 740
無奈伤痛
無奈伤痛 2020-11-29 12:01

I have a decimal number which can be like the following:

189.182

I want to round this up to 2 decimal places, so the ou

5条回答
  •  青春惊慌失措
    2020-11-29 12:32

                var numberToBeRound1 = 4.125;
                var numberToBeRound2 = 4.175;
                var numberToBeRound3 = 4.631;
                var numberToBeRound4 = 4.638;
                var numberOfDecimalPlaces = 2;
                var multiplier = Math.Pow(10, numberOfDecimalPlaces);
    
                //To Round Up => 4.13
                var roundedUpNumber = Math.Ceiling(numberToBeRound1 * multiplier) / multiplier;
    
                //To Round Down => 4.12
                var roundedDownNumber = Math.Floor(numberToBeRound1 * multiplier) / multiplier;
    
                //To Round To Even => 4.12
                var roundedDownToEvenNumber = Math.Round(numberToBeRound1, numberOfDecimalPlaces, MidpointRounding.ToEven);
    
                //To Round To Even => 4.18
                var roundedUpToEvenNumber = Math.Round(numberToBeRound2, numberOfDecimalPlaces, MidpointRounding.ToEven);
    
                //To Round To Away From Zero => 4.63
                var roundedDownToAwayFromZero = Math.Round(numberToBeRound3, numberOfDecimalPlaces, MidpointRounding.AwayFromZero);
    
                //To Round To Away From Zero => 4.64
                var roundedUpToAwayFromZero2 = Math.Round(numberToBeRound4, numberOfDecimalPlaces, MidpointRounding.AwayFromZero);
    

提交回复
热议问题