常用小数舍入标准简介
1、标准四舍五入(Math.Round();)
当舍去位的数值大于等于5时,在舍去该位的同时向前位进一;当舍去位的数值小于5时,则直接舍去该位。
2、银行家舍入(decimal.Round())
所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法。其规则是:当舍去位的数值小于5时,直接舍去该位;当舍去位的数值大于等于6时,在舍去该位的同时向前位进一;当舍去位的数值等于5时,如果前位数值为奇,则在舍去该位的同时向前位进一,如果前位数值为偶,则直接舍去该位。
下面举.NET中处理decimal类型的一个例子:
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { //Floor方法向负无穷方向舍入为最接近的整数 Console.WriteLine(decimal.Floor(-1.3m)); //-2 Console.WriteLine(decimal.Floor(3.5m)); //3 Console.WriteLine(decimal.Floor(4m)); //4 //Truncate方法向零方向舍入为整数 Console.WriteLine(decimal.Truncate(-1.3m));//-1 Console.WriteLine(decimal.Truncate(3.5m));//3 Console.WriteLine(decimal.Truncate(4m)); //4 //实现正的decimal数值的四舍五入,则必须用下面的技巧,保留到小数点后2位,就用100,保留到小数点后3位就用1000,依次类推 decimal a = 8.335m, b = 8.345m; Console.WriteLine(decimal.Truncate(a * 100 + 0.5m) / 100); //8.34 Console.WriteLine(decimal.Truncate(b * 100 + 0.5m) / 100); //8.35 //实现负的decimal数值的四舍五入,则必须用下面的技巧,保留到小数点后2位,就用100,保留到小数点后3位就用1000,依次类推 decimal c = -8.335m, d = -8.345m; Console.WriteLine(decimal.Truncate(c * 100 - 0.5m) / 100); //8.34 Console.WriteLine(decimal.Truncate(d * 100 - 0.5m) / 100); //8.35 Console.WriteLine(); } } }
注意:小数默认的类型是double类型,所以凡是末尾没加m或M的小数都是double类型。
System.Decimal的Round方法和System.Math结构的Round方法默认情况下,都是采用的银行家舍入,即四舍六入五取偶,其中带一个参数的重载和带两个参数的重载形式下,默认都是银行家舍入。比较特殊的是带三个参数的Round方法,它的第三个参数是MidpointRounding枚举类型,MidpointRounding枚举类型定义了两个枚举值,为了实现四舍五入,我们这里使用的是MidpointRounding.AwayFromZero这个值。MidpointRounding.AwayFromZero枚举值的真正意思是:当一个数字是其他两个数字的中间值时,会将其舍入为两个值中绝对值较大的值。
所以我们既可以使用Round方法的前两种重载形式实现银行家舍入,也可以使用带三个参数的Round方法实现四舍五入,但枚举值必须使用MidpointRounding.AwayFromZero,而不能使用MidpointRounding.ToEven。
相关推荐
在Excel电子表格软件中,四舍五入是一个常见的数值处理操作,用于将数字调整到指定的小数位数。本文将详细对比三种不同的四舍五入方法:ROUND函数、MID函数配合FIND函数以及INT和*10的组合,帮助你了解它们的特点,...
根据给定的信息,本文将详细解释如何在Oracle数据库中计算从2000年1月1日至今经过了多少个月和多少个星期,并且结果需要进行四舍五入处理。 ### Oracle数据库中的日期函数 在Oracle数据库中,进行日期计算是非常...
今天,我们将介绍 Excel 函数在财税实务中的应用,特别是四舍五入、不四舍五入或取整的相关函数。 一、ROUND 函数 ROUND 函数是 Excel 中的一个基本函数,用于对数字进行四舍五入操作。其基本语法为:ROUND(目标...
在JavaScript编程中,处理浮点数四舍五入的方法主要有两种,即Number对象的toFixed()方法和Math对象的round()方法。这两种方法虽然都能实现四舍五入的效果,但它们在四舍五入的规则和应用场景上存在一定的差异。 ...
“数学运算初步讲解(整除、取模、四舍五入基本应用)” 数学运算初步讲解 在 C++ 编程中,数学运算是非常重要的一部分,本节课程将讲解整除、取模和四舍五入的基本应用。 整除的概念 在 C++ 中,除法运算比较...
ASP 中的数值取整与四舍五入 ASP 是一种服务器端脚本语言,广泛应用于web开发中。今天我们要讨论的是 ASP 中的数值取整问题。在 ASP 中,获取一个数的整数部分可以使用 Fix 函数,但是 Fix 函数的作用是将小数部分...
Excel 取整函数 - 四舍五入为最接近的偶数函数 EVEN Excel 表格取整函数是指在 Excel 中对数字进行取整操作的函数,包括四舍五入、截去小数、向上取整、向下取整等多种方式。其中,四舍五入为最接近的偶数函数 EVEN...
然而,在处理Decimal类型的数值时,有时我们需要保留特定的小数位数,但又不希望进行四舍五入操作,而是直接截取小数部分。在C#标准库中,`Decimal.Round()`方法可以用来保留小数位数,但它会执行四舍五入操作。针对...
本课时的主题是“用四舍五入法求商的近似数”,旨在让学生掌握如何在计算过程中根据需要取商的近似值,并理解其在实际问题解决中的应用。 首先,我们要明确近似数的概念。近似数是相对于精确数而言的,它是在一定...
常用的方法包括toFixed()和round(),它们都能够实现数字的四舍五入,但用法和四舍五入的规则却有着明显的区别。在这里,我们将详细介绍toFixed()和round()这两个方法的特点、使用场景以及它们的规则差异。 首先,...
包括: by分组和class分组的区别 datalines与datalines4语句详解 ...round四舍五入用法举例 SAS常用日期和时间函数 SAS导入文件和数据集用法举例 SAS中3种定义宏变量方法 SAS中nodupkey和nodup的区别 。。。。 等等
比如,某市在校学生今年共植树148264棵,通过四舍五入,我们可以得到近似数:约148260棵(四舍五入到十位)、约148300棵(四舍五入到百位)、约148000棵(四舍五入到千位)、约150000棵(四舍五入到万位),这样简化...
- ⑵正确,如果一个数四舍五入到千位是6000,那么原来的数最大可能是6499,因为四舍五入后只保留到千位且不超过6500。 - ⑶正确,19□785省略万位后的尾数约是3万,意味着千位上的数应小于5,所以可以填0、1、2、3...
2. 精度控制:理解浮点数运算可能出现的精度问题,如四舍五入误差。 3. 溢出检测:检查运算结果是否超出浮点数的表示范围,防止错误的计算结果。 4. 异常处理:设置适当的错误处理机制,如除以零或非法数据输入等...
在小学五年级上册的数学课程中,"3.6 求小数的近似值"是一个重要的知识点,主要涉及如何使用“四舍五入法”来获取一个数的近似值。这一课件旨在帮助学生理解和掌握近似值的概念,并通过实际应用提升他们的数学思维...
- 四舍五入到“万平方米”,意味着将数值保留到万位并进行四舍五入。例如,四万三千七百二十一四舍五入到“万平方米”是44万平方米。 2. 数位的理解与组成: - 了解数位的概念,如1135420是七位数,最高位是百万...
3. 四舍五入的近似值:一个两位小数四舍五入到整数,若保留的整数是3,那么最小时应该是2.5(四舍),最大时是3.4(五入)。 4. 循环小数的表示:8÷3的商是一个无限循环小数,简便表示为8/3或者2.666...,也可以...
这些练习题覆盖了积的近似数的基本概念和计算方法,包括精确数与近似数的区别,四舍五入规则的应用,以及在实际问题中的应用。通过这些练习,学生能够巩固对积的近似数的理解,并提高他们在解决实际问题中的能力。
《大数的认识》教学设计(第5课时)聚焦于教育领域,特别是数学教育,旨在帮助学生理解和掌握近似数的概念以及如何运用“四舍五入”法来求亿以内数的近似数。教学目标明确,旨在让学生理解近似数的含义,学会“四舍...