php四舍五入 js四舍五入方法
四舍五入是一種精確度的計數(shù)保留法,與其他方法本質(zhì)相同。特殊之處在于,采用四舍五入,能使被保留部分的與實際值差值不超過最后一位數(shù)量級的二分之一:假如0~9等概率出現(xiàn)的話,對大量的被保留數(shù)據(jù),這種保留法的誤差總和是最小的,因此四舍五入法也是最基本的保留法。
、
例子一:例如π被四舍五入,保留下3.14。但是,有的時候不可以用四舍五入的方法,而要用“進一法”和“去尾法”。例如,288個學(xué)生春游,45人一輛大巴,算下來是6.4輛大巴,但是必須進一才可以不讓人多出來,不讓車少,因為車的數(shù)量不能為小數(shù),所以需要7輛大巴。再例如,1016升汽油,要給汽車加油,20升一輛,平均可加50.8輛,但是必須去尾才可以不讓車多出來,讓油少,因為車的數(shù)量不能為小數(shù),所以可以給50輛汽車加油。
注:數(shù)量級:即數(shù)字所在位置權(quán)值,如3.14159這個數(shù),3的數(shù)量級為1(10^0),9的數(shù)量級為0.00001(10^-5)。
本文介紹php四舍五入函數(shù)使用方法,php 數(shù)據(jù)處理之取整,四舍五入分為四個部分,php四舍五入函數(shù)使用分別如下。
1.丟棄小數(shù)部分,保留整數(shù)部分
1
|
intval (7/2) |
2.向上取整,有小數(shù)就整數(shù)部分加1
1
|
ceil (7/2) |
3, 對浮點數(shù)進行四舍五入
1
|
round (7/2) |
如果php四舍五入要保留兩位小數(shù),后來參數(shù)根保留小數(shù)位數(shù)即可。
1
2
|
$number = 1234.5678; echo round($number ,2); //1234.57 |
4,向下取整
1
|
floor (7/2) |
PHP取整數(shù)函數(shù)常用的四種方法,下面收集了四個函數(shù); 經(jīng)常用到取整的函數(shù),今天小小的總結(jié)一下!其實很簡單,就是幾個函數(shù)而已~~主要是:ceil,floor,round,intval
一、ceil — 進一法取整 說明 float ceil ( float value ) 返回不小于 value 的下一個整數(shù),value 如果有小數(shù)部分則進一位。ceil() 返回的類型仍然是 float,因為 float 值的范圍通常比 integer 要大。 例子 1. ceil() 例子 < ?php echo ceil(4.3); // 5 echo ceil(9.999); // 10 ?>
二、floor — 舍去法取整 說明 float floor ( float value ) 返回不大于 value 的下一個整數(shù),將 value 的小數(shù)部分舍去取整。floor() 返回的類型仍然是 float,因為 float 值的范圍通常比 integer 要大。 例子 1. floor() 例子 < ?php echo floor(4.3); // 4 echo floor(9.999); // 9 ?>
三、round — 對浮點數(shù)進行四舍五入 說明 float round ( float val [, int precision] ) 返回將 val 根據(jù)指定精度 precision(十進制小數(shù)點后數(shù)字的數(shù)目)進行四舍五入的結(jié)果。precision 也可以是負數(shù)或零(默認值)。 例子 1. round() 例子 < ?php echo round(3.4); // 3 echo round(3.5); // 4 echo round(3.6); // 4 echo round(3.6, 0); // 4 echo round(1.95583, 2); // 1.96 echo round(1241757, -3); // 1242000 echo round(5.045, 2); // 5.05 echo round(5.055, 2); // 5.06 ?>
四、intval—對變數(shù)轉(zhuǎn)成整數(shù)型態(tài) 例子intval() < ?php echo intval(4.3); //4 echo intval(4.6); // 4 ?>
php?教程?php除法?余數(shù)處理方法[四舍五入]和[有余數(shù)則進1]兩種處理方式-php基礎(chǔ)教程
echo?round(3.4);?????????//?3
echo?round(3.5);?????????//?4
echo?round(3.6);?????????//?4
echo?round(3.6,?0);??????//?4
echo?round(1.95583,?2);??//?1.96
echo?round(1241757,?-3);?//?1242000
echo?round(5.045,?2);????//?5.05
echo?round(5.055,?2);????//?5.06
echo?ceil(4.3);????//?5
echo?ceil(9.999);??//?10
echo?ceil(-3.14);??//?-3
方法一:
?在js中四舍五入的函數(shù) tofixed(n) , n為要保留的小數(shù)位數(shù)。
?n為0~20,當(dāng)n超過20的時候,js會出錯。
?var d=10.005;
? var f=d.tofixed(2);
? alert(f);
? bug:
? 如果小數(shù)點前和要截取的前一位都是0時,不會按常理截取。
? var h=0.07
? h.tofixed(1)的值為0.0
? 如果要修改這個缺陷,可以把js中的number類型的tofixed方法重寫。
例如:
? {
????? var s=this+"";if(!d)d=0;
????? if(s.indexof(".")==-1)s+=".";s+=new array(d+1).join("0");
????? if (new regexp("^(-|\\+)?(\\d+(\\.\\d{0,"+ (d+1) +"})?)\\d*$").test(s))
????? {
? var s="0"+ regexp.$2, pm=regexp.$1, a=regexp.$3.length, b=true;
? if (a==d+2){a=s.match(/\d/g); if (parseint(a[a.length-1])>4)
? {
????? for(var i=a.length-2; i>=0; i--) {a[i] = parseint(a[i])+1;
????? if(a[i]==10){a[i]=0; b=i!=1;} else break;}
? }
? s=a.join("").replace(new regexp("(\\d+)(\\d{"+d+"})\\d$"),"$1.$2");
????? }if(b)s=s.substr(1);return (pm+s).replace(/\.$/, "");} return this+"";
};??
這樣就可以修復(fù)number類型的tofixed方法。
方法二:
之前一直在用這個js自帶的tofixed函數(shù)來進行四舍五入的操作,可是,在實際使用過程中卻遇到了問題。
比如
alert(number(money).tofixed(2));??
//0.00?
以上結(jié)果是錯誤的,下面的方法通過巧妙的使用math.round函數(shù),完全可以解決數(shù)值很小時的精度問題。
alert(number(money).tofixed(2));??
?
function round2(number,fractiondigits){??
??? with(math){??
??????? return round(number*pow(10,fractiondigits))/pow(10,fractiondigits);??
??? }??
}??
alert(round2(money,2));//0.01
round 方法
返回與給出的數(shù)值表達式最接近的整數(shù)。
math.round(number)
必選項 number 參數(shù)是要舍入到最接近整數(shù)的值。
說明
如果 number 的小數(shù)部分大于等于 0.5,返回值是大于 number 的最小整數(shù)。
否則,round 返回小于等于 number 的最大整數(shù)。
wps表格四舍五入怎么取消?當(dāng)我們在wps表格上輸入的一些數(shù)據(jù)之后,被wps表格給四舍五入了。如果不需要四舍五入該怎么辦呢?下面為大家介紹一下wps表格四舍五入取消方法,一起來看看吧!
??????? wps表格四舍五入取消方法
1、首先我們打開wps表格,然后右擊單元格===設(shè)置單元格格式===選擇“常規(guī)”確定
0 Comments.