取整函数

PHP四舍五入精确小数位及取整

谁说胖子不能爱 提交于 2020-02-05 05:56:58
PHP取整数函数常用的四种方法,下面收集了四个函数; 经常用到取整的函数,今天小小的总结一下!其实很简单,就是几个函数而已~~主要是:ceil,floor,round,intval 一、ceil — 进一法取整 说明 float ceil ( float value ) 返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。 例子 1. ceil() 例子 <?php echo ceil(4.3); // 5 echo ceil(9.999); // 10 ?> 二、floor — 舍去法取整 说明 float floor ( float value ) 返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。 例子 1. floor() 例子 <?php echo floor(4.3); // 4 echo floor(9.999); // 9 ?> 三、round — 对浮点数进行四舍五入 说明 float round ( float val [, int precision] ) 返回将 val 根据指定精度 precision

Python取整的方法

你说的曾经没有我的故事 提交于 2020-02-03 03:59:45
一、向零取整:int() python自带的int()取整 >> > int ( 1.2 ) 1 >> > int ( 2.8 ) 2 >> > int ( - 0.1 ) 0 >> > int ( - 5.6 ) - 5 总结:int()函数是“向0取整”,取整方向总是让结果比小数的绝对值更小 二、向上取整:math.ceil() >> > import math >> > >> > math . ceil ( 0.6 ) 1 >> > math . ceil ( 1.1 ) 2 >> > math . ceil ( 3.0 ) 3 >> > math . ceil ( - 0.3 ) 0 >> > math . ceil ( - 5.1 ) - 5 总结:math.ceil()严格遵循向上取整,所有小数都是向着数值更大的方向取整,不论正负数都如此 三、向下取整:math.floor() , “//” >> > import math > >> > math . floor ( 0.5 ) 0 >> > math . floor ( 1.2 ) 1 >> > math . floor ( - 0.9 ) - 1 >> > math . floor ( - 3.0 ) - 3 >> > math . floor ( - 3.1 ) - 4 总结:math.floor(

codeforces 1186D

廉价感情. 提交于 2020-01-27 04:40:40
给一些浮点数,它们的和为0,把每个数向下或者向上取整,得到新的数,它们的和也为0。输出取整后的数。 这题可以用ceil函数,向上取整,然后把多出来的,从第一个数开始减一,如果这个数本来是整数,就不能减。 而且要注意总的个数是1e5数绝对值的范围也是1e5。可能会爆int。 ceil函数会得到-0这个值,要判断一下 #pragma warning(disable:4996) #include<climits> #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<map> #include<set> #include<cmath> #include<stack> #include<queue> #include<string> using namespace std; typedef long long ll; double a[200005]; int b[200005];//用来标记第i个数是不是整数 int main() { int n, i, j; ll sum = 0; scanf("%d", &n); for (i = 0; i < n; i++) { scanf("%lf", &a[i]); if (a[i] == ceil(a[i]))//是整数 b[i]

【Python】取整函数

﹥>﹥吖頭↗ 提交于 2020-01-23 17:00:29
int()向下取整:内置函数 round()四舍五入取整:内置函数,还可在保留x位小数的前提下四舍五入 >> > n = 2.7562 >> > int ( n ) 2 >> > round ( n ) 3 >> > round ( n , 2 ) 2.76 floor() 向下取整 math模块函数 ceil()向上取整 math模块函数 >> > import math >> > n = 2.7 >> > math . floor ( n ) 2 >> > math . ceil ( n ) 3 modf() 分别取整数部分和小数部分 math模块函数 该方法返回一个包含小数部分和整数部分的元组 >> > x = 2.5644 >> > math . modf ( x ) ( 0.5644 , 2.0 ) >> > n = 4.2 >> > math . modf ( n ) ( 0.20000000000000018 , 4.0 ) 最后一个输出涉及到了另一个问题,即浮点数在计算机中的表示,在计算机中是无法精确的表示小数的,至少目前的计算机做不到这一点。上例中最后的输出结果只是 0.2 在计算中的近似表示。Python 和 C 一样, 采用 IEEE 754 规范来存储浮点数。 摘自 https://www.jb51.net/article/102248.htm 来源:

BigDecimal类

蹲街弑〆低调 提交于 2020-01-19 16:36:42
BigDecimal 是java小数操作的一个专有类,在电商、金融行业 存储跟金额有关的字段 java里面明明已经有了,float,double这种精度的小数,为什么还需要BigDecimal呢? 这难道不是多余吗? 接下来看一个例子: 1 @Test 2 public void testDoubleSimple() { 3 double a = 3; 4 double b = 10; 5 double c = a / b; 6 System.out.println(c); 7 } 控制台输出:0.3 在小数操作中,我们通常希望能有多种自由的定义方式。 例如在不同的场景可能需要返回: 0.3, 0.4, 0.333 不同精度,在不同的精度进位时希望能自主控制 这个时候,就轮到BigDecimal出场了 加减乘除 首先来一段最简单的加减乘除 1 @Test 2 public void testDecimalSimple() { 3 BigDecimal a = new BigDecimal(5); 4 BigDecimal b = new BigDecimal(40); 5 BigDecimal add = a.add(b); 6 BigDecimal subtract = a.subtract(b); 7 BigDecimal multiply = a.multiply(b); 8

VBA基础语法:取整函数

若如初见. 提交于 2020-01-18 06:42:09
VBA取整函数有好几个,用法也不同,有的还可以在工作表中使用,下面根据需求分别说明: 1、四舍五入取整,一般用于取近似数 (1)CInt:只能在VBA中使用 CInt(12.56)=13, CInt(12.46)=12, CInt(-12.56)=-13, CInt(-12.46)=-12 (2)Round:在VBA中使用和CInt相同 Round(12.56)=13, Round(12.46)=12, Round(-12.56)=-13, Round(-12.46)=-12, 此函数实际上有两个参数,第二个参数表示取小数的位数,或略表示取整,即小数位数为0。该函数还可以在工作表中使用,使用时两个参数必须写全,即: Round(12.56,0)=13, Round(12.56,1)=12.6 2、取整数部分,小数舍弃,常用于取整数和余数 (1)Fix:只能在VBA中使用 Fix(12.56)=12, Fix(12.46)=12, Fix(-12.56)=-12, Fix(-12.46)=-12 (2)Int:在VBA和工作表中都可以使用 此函数取正数时和Fix相同,负数时往绝对值高的方向取,就是说,取小于其值得整数, Int(12.56)=12, Int(12.46)=12, Int(-12.56)=-13, Int(-12.46)=-13 举例:买50个鸡蛋,12个鸡蛋一盒

取整

时光总嘲笑我的痴心妄想 提交于 2020-01-15 13:06:41
取整 共包括三个函数,都在 <math.h> 头文件下 向下取整 floor() 向上取整 ceil() 四舍五入 round() 这些函数很显然只对小数有用,而当要运算两个整型数之间的除法时,要乘一个 1.0,以此来进行浮点数运算。 来源: https://www.cnblogs.com/CADCADCAD/p/12195930.html

程序中的 “负数取模” 问题

安稳与你 提交于 2020-01-13 04:37:14
整数除法取整 计算机上有几种对于结果取整的方法: 向上取整,向+∞方向取最接近精确值的整数,也就是取比实际结果稍大的最小整数,也叫 Ceiling 取整。这种取整方式下,17 / 10 == 2,5 / 2 == 3, -9 / 4 == -2。 向下取整,向-∞方向取最接近精确值的整数,也就是取比实际结果稍小的最大整数,也叫 Floor 取整。这种取整方式下,17 / 10 == 1,5 / 2 == 2, -9 / 4 == -3。 向零取整,向0方向取最接近精确值的整数,换言之就是舍去小数部分,因此又称截断取整(Truncate)。这种取整方式下,17 / 10 == 1,5 / 2 == 2, -9 / 4 == -2。 取模怎么算 取模运算实际上是计算两数相除以后的余数。假设 q 是 a、b 相除产生的商(quotient),r 是相应的余数(remainder),那么在几乎所有的计算系统中,都满足: a = b x q + r,其中 |r|<|a|。 因此 r 有两个选择,一个为正,一个为负;相应的,q 也有两个选择。如果a、b 都是正数的话,那么一般的编程语言中,r 为正数;或者如果 a、b 都是负数的话,一般 r 为负数。但是如果 a、b 一正一负的话,不同的语言则会根据除法的不同结果而使得 r 的结果也不同,但是一般 r 的计算方法都会满足: r = a - (a

matlab里面如何保留小数特定位数与格式化字符串

岁酱吖の 提交于 2020-01-11 02:09:28
Matlab取整函数有: fix, floor, ceil, round.取整函数在编程时有很大用处。 一、取整函数 1.向零取整(截尾取整) fix-向零取整(Round towards zero); >> fix(3.6) ans = 3 2.向负无穷取整(不超过x 的最大整数-高斯取整) floor-向负无穷取整(Round towards minus infinity); >> floor(-3.6) ans = -4 3.向正无穷取整(大于x 的最小整数) ceil-向正无穷取整(Round towards plus infinity); >> ceil(-3.6) ans = -3 4.向最近整数取整,四舍五入(四舍五入取整) round-向最近整数取整,四舍五入(Round towards nearest integer); >> round(3.5) ans = 4 二、在小数点后某一位四舍五入,即保留几位小数,也经常用到。 1.数值型 roundn—任意位位置四舍五入 >>a=123.4567890; >>a=roundn(a,-4) a = 123.4568 其中roundn函数功能如下: y = ROUNDN(x) rounds the input data x to the nearest hundredth. %不指定n,精确到百分位 y = ROUNDN

干货分享 -- Math

邮差的信 提交于 2019-12-23 17:55:53
昼猫笔记 JavaScript -- Math Math也是JS的内置对象,但是它不是一个构造函数,它属于一个工具类不用创建对象,它封装了数学运算相关的属性和方法,今天就来写下常用的函数【API(application progrom interface 应用程序开发接口)】 常用属性 PI 表示的圆周率 常用方法 abs() 可以用来计算一个数的绝对值 console.log(Math.abs(-1)) // 1 round() 四舍五入取整 console.log(Math.round(3.22)) // 3 ceil() 向上取整,获取最接近的整数(大于或者等于当前数字) console.log(Math.ceil(3.000022)) // 4 console.log(Math.ceil(3)) // 3 floor() 向下取整 console.log(Math.floor(3.22)) // 3 max() 取最大值 console.log(Math.max(3,4,6,7,2,1,4,0)) // 7 min() 取最小值 console.log(Math.min(3,4,6,7,2,1,4,0)) // 0 获取数组中最大数,最小数 var arr = [3, 4, 6, 7, 2, 1, 4, 0] console.log(Math.max.apply(null,