Option?Explicit
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、成都微信小程序、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了自流井免費(fèi)建站歡迎大家使用!
Private?Type?qx
zs?As?Long
xs?As?Single
End?Type
Private?Sub?Command1_Click()
Call?xs(100.365)
End?Sub
Function?xs(a?As?String)
Dim?i?As?Integer,?xx?As?qx
i?=?InStr(1,?a,?".")
xx.xs?=?Mid(a,?i,?Len(a)?-?i?+?1)
xx.zs?=?Mid(a,?1,?i?-?1)
Print?a?+?"??整數(shù)部分"?+?CStr(xx.zs)?+?"小數(shù)部分"?+?CStr(xx.xs)
End?Function
先把x化為整數(shù),然后取右邊3位,得到y(tǒng),y/100的整數(shù)賦給a
同理,先把x化為整數(shù),然后取右邊2位,得到y(tǒng),y/10的整數(shù)賦給b
Private Sub Command1_Click()
Dim b(1 To 6) As String, myBstr(1 To 6) As String, myOutput(1 To 6) As String, myTempStr As String, myData As Long, myResult As String, a As Integer, i As Integer, j As Integer, k As Integer
'Open App.Path "\3d.txt" For Input As #1
'讀入a值,應(yīng)該不難吧
'Close
myData = 250663235: a = 789 'a值根據(jù)從文件讀入的值變化
myResult = Replace(StrReverse(Format(myData / a, "0.000000")), ".", "")
For i = 1 To 6
b(i) = Left(myResult, 1)
myResult = Replace(myResult, b(i), "")
Next
myBstr(1) = b(1)
For i = 2 To 6
myBstr(i) = myBstr(i - 1) b(i)
Next
For i = 0 To 999
For j = 1 To 3
myTempStr = Mid(Format(i, "000"), j, 1)
For k = 1 To 6
If InStr(1, myBstr(k), myTempStr) 0 Then myOutput(k) = myOutput(k) IIf(InStr(1, myOutput(k), Format(i, "000")) 0, "", Format(i, "000") " ")
Next
Next
Next
For i = 1 To 6
Open App.Path "\" a "-" myBstr(i) ".txt" For Output As #1
Print #1, myOutput(i)
Close
Next
MsgBox "數(shù)據(jù)處理完畢"
End Sub
double是雙精度 有效數(shù)值位52位 表示成指數(shù)的形式 即指數(shù)11位 即表示成
所以180.89305用2進(jìn)制表示是10110100.1110010010011110111011001011111110110001010110110101
即
180.89305在double中存在的實(shí)際數(shù)值是
1.01101001110010010011110111011001011111110110001010110110101 *2^7
取小數(shù)點(diǎn)后 52位有效值后 等于10進(jìn)制的180.893049999999998
所及加最后變成了 1808930.99999999998
第一次當(dāng)然輸出近似值1808931
第二次int函數(shù)去掉了小數(shù)點(diǎn)后的數(shù)int就是只取整數(shù)的部位的不是四舍五入 所以少了1
int在絕對(duì)值上四舍五入,Truncate在靠近0的方向取整,比如:
Sub?Main()
Dim?d?=?-1.9D
'Dim?I?As?Integer?=?Int(d)?'-2
Dim?I?As?Integer?=?Math.Truncate(d)?'-1
Console.WriteLine(I)
Console.ReadLine()
End?Sub
有兩個(gè)函數(shù):Int 和 Fix。
Int 定義為返回不大于給定參數(shù)的最大整數(shù)值,如:
Int(3.9) = 3
Int(3.1) = 3
Int(3) = 3
Int(0) = 0
Int(-3) = -3
Int(-3.1) = -4
Int(-3.9) = -4
Fix 又稱“截尾”函數(shù)。
即簡(jiǎn)單保留整數(shù)部分,如:
Fix(3.9) = 3
Fix(-3.9) = -3
如果需要“四舍五入”,則得巧妙利用 Int 函數(shù):
Int(x + 0.5) 表示四舍五入到個(gè)位;
Int(x * 100 + 0.5) * 0.01 表示四舍五入到百分位(小數(shù)點(diǎn)后第二位)
分享題目:vb.net只去整數(shù)位 vb保留整數(shù)的代碼是什么
網(wǎng)站路徑:http://muchs.cn/article22/hgsecc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、手機(jī)網(wǎng)站建設(shè)、企業(yè)建站、小程序開發(fā)、標(biāo)簽優(yōu)化、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)