摘 要:本文通過使用Microsoft Excel軟件建立數值修約函數,處理陶瓷磚試驗方法中的計算問題,使數據符合GB/T 8170-2008《數值修約規則與極限數值的表示和判定》,實現數據處理過程中數值修約的自動化,確保計算準確度,提高工作效率。
關鍵詞:陶瓷磚;數值修約;自編函數
1 前 言
Excel是微軟辦公套裝軟件的一個重要組成部分,它可以進行各種數據的處理、統計分析和輔助決策操作,廣泛地應用于管理、統計財經、金融等眾多領域。Excel中有大量的公式函數可以應用選擇,可以實現許多方便的功能。但是在Excel軟件中,通過自帶函數的套用是達不到GB/T 8170-2008《數值修約規則與極限數值的表示和判定》規定的數據處理要求。本文介紹在Excel軟件中,通過自編函數來解決在陶瓷磚試驗方法中計算過程遇到的數值修約問題的方法。
2 GB/T 8170-2008《數值修約規則與極限數值的表示和判定》對數值的進舍規則
(1) 擬舍棄數字的最左一位數字小于5,則舍去,保留其余各位數字不變;
(2) 擬舍棄數字的最左一位數字大于5,則進一,即保留數字的末位數字加1;
(3) 擬舍棄數字的最左一位數字是5,且其后有非0數字時進一,即保留的末位數字加1;
(4) 擬舍棄數字的最左一位數字為5,且其后無數字或皆為0時,若所保留數字的末位數字為奇數(1,3,5,7,9)則進一,即保留數字的末位數字加1;若所保留的末位數字為偶數(0,2,4,6,8)則舍去;
(5) 負數修約時,取絕對值按照上述1~4規定進行修約,再加上負號。
3 自行設計數值修約函數
擬舍棄數據“X”,要求精確到小數點后第n位,并符合GB/T 8170-2008《數值修約規則與極限數值的表示和判定》規定的數據處理要求。設計流程見圖1。
根據上述設計流程,在Excel實現數值修約的自編函數如下:
IF(INT(10nA1+0.5)=10nA1+0.5,(IF(ROUND(A1/2,n)=ROUND(A1,n)/2,ROUND(A1,n),TRUNC(A1,n))),ROUND(A1,n))
式中,A1為待修約數值所在Excel單元格的序號;n為擬保留的小數位數。
4 數值修約自編函數的具體分析
4.1使用函數介紹
數值修約設計流程見圖1。IF(logical test,value if ture,value if 1)函數:根據判斷一個條件是否滿足,如果滿足返回一個值,如果不滿足則返回另一個值。
INT(munber)函數:將數值向下取整為最接近的整數。
ROUND(number,num digits)函數:按指定位數對數值進行四舍五入。
TRUNC(number,num digits)函數:將數值截為整數或保留指定位數的小數。
4.2具體分析
第一個IF函數:
“logical test”條件部分為INT(10nA1+0.5)=10nA1+0.5;
“value if ture”為TURE時返回為(IF(ROUND(A1/2,n)=ROUND(A1,n)/2,ROUND(A1,n),TRUNC(A1,n)));
“value if 1”為FALSE時返回為ROUND(A1,n);
舉例如下:
假設A1單元格中的數值為2.45,擬將其修約至一位小數,則
INT(10nA1+0.5)=10nA1+0.5
INT(2.45*10+0.5)=2.45*10+0.5
INT(25)=25
25=25
則返回執行(IF(ROUND(A1/2,n)=ROUND(A1,n)/2,ROUND(A1,n),TRUNC(A1,n)));進入第二個IF函數進行真假值判斷。
假設A1單元格中的數值為2.46,擬將其修約至一位小數,則
INT(10nA1+0.5)=10nA1+0.5
INT(2.46*10+0.5)=2.46*10+0.5
INT(25)=25.1
25≠25.1
則執行ROUND(A1,n);將A1單元格數值四舍五入,即修約為2.5。
第二個IF函數:
“logical test”條件部分為ROUND(A1/2,n)=ROUND(A1,n)/2;
“value if ture”為TURE時返回為ROUND(A1,n)
“value if 1”為FALSE時返回為TRUNC(A1,n);
舉例如下:
假設A1單元格中的數值為2.35,擬將其修約至一位小數,則
ROUND(A1/2,n)=ROUND(A1,n)/2
ROUND(2.35/2,1)=ROUND(2.35,1)/2
ROUND(1.175,1)=ROUND(2.35,1)/2
1.2=1.2
則執行ROUND(A1,n),將A1單元格數值四舍五入,即修約為2.4。
假設A1單元格中的數值為2.45,擬將其修約至一位小數,則
ROUND(A1/2,n)=ROUND(A1,n)/2
ROUND(2.45/2,1)=ROUND(2.45,1)/2
ROUND(1.225,1)=ROUND(2.45,1)/2
1.2≠1.25
則執行TRUNC(A1,n),將保留指定位數的小數,即修約為2.4。
5 數值修約函數的驗證和應用
5.1數值修約函數公式驗證
利用Excel自帶修約函數和利用自編數值修約函數的對比,對原數值進行修約至一位小數,數值的修約對比結果見圖2。
5.2數值修約函數在陶瓷磚吸水率測試過程中的應用
吸水率測試原理是將干燥磚置于水中吸水至飽和,用磚的干燥質量和吸水飽和后質量及在水中質量計算相關的特性參數。
計算每一塊磚的吸水率E,用干磚的質量分數(%)表示,計算公式如下:
E=×100
m1——干磚的質量,g;
m2——濕磚的質量,g;
吸水率數值修約要求,當E≥1時,精確到0.1%;當E<1時,精確到0.01%,修約結果見圖3。
6 結 論
在Excel軟件中,使用自編數值修約函數,經測試使用,符合GB/T 8170-2008《數值修約規則與極限數值的表示和判定》規定的數據處理要求,不但可以避免人工修約的繁瑣和失誤,而且可以確保數據的準確性,更能大大提高工作效率。
參考文獻
[1] GB/T 8170-2008《數值修約規則與極限數值的表示和判定》[s].
北京:2008,1-2.
[2] GB/T 3810.3-2006《陶瓷磚試驗方法第3部分:吸水率、顯氣
孔率、表觀相對密度和容重的測定》[s].北京:2006,1-2.