淺談c# 浮點數(shù)計算
給大家看個計算題,看看大家的算術(shù)能力。
0.1 +0.1 +0.1 - 0.3 等于幾?
大家可能會說這么簡單的問題,是不是看不起我?肯定等于0啊。
如果大家直接算的是沒有問題的,但是如果用計算機(jī)呢?
見證奇跡的時刻到了,看代碼:
void Main()
{
var f = 0.1 +0.1 +0.1 -0.3;
Console.WriteLine("f=={0}",f);
}
運行結(jié)果:
這是因為計算機(jī)的精度的問題,在計算機(jī)的內(nèi)部存儲和運算的精度缺失等問題,我解釋的可能不太明白,不過,大家可以用下面的方案進(jìn)行解決:
void Main()
{
//var f = 0.1 +0.1 +0.1 -0.3;
//Console.WriteLine("f=={0}",f);
var f1 = new Decimal(0.1) + new Decimal(0.1) + new Decimal(0.1) - new Decimal(0.3);
Console.WriteLine("f1 == {0}",f1);
}
運行結(jié)果:
這樣就是正常的運算結(jié)果了。
啦啦啦?。。?!
您可能感興趣的文章
- 01-10C#實現(xiàn)主窗體最小化后出現(xiàn)懸浮框及雙擊懸浮框恢復(fù)原窗體的方
- 01-10淺談C#中簡單的異常引發(fā)與處理操作
- 01-10淺談C#指針問題
- 01-10淺談Visual C#進(jìn)行圖像處理(讀取、保存以及對像素的訪問)
- 01-10淺談C#中的值類型和引用類型
- 01-10淺談C# 非模式窗體show()和模式窗體showdialog()的區(qū)別
- 01-10淺談C#各種數(shù)組直接的數(shù)據(jù)復(fù)制/轉(zhuǎn)換
- 01-10C#學(xué)習(xí)筆記- 淺談數(shù)組復(fù)制,排序,取段,元組
- 01-10淺談C# 序列化與反序列化幾種格式的轉(zhuǎn)換
- 01-10C#實現(xiàn)win10 uwp 右擊浮出窗在點擊位置


閱讀排行
本欄相關(guān)
- 01-10C#通過反射獲取當(dāng)前工程中所有窗體并
- 01-10關(guān)于ASP網(wǎng)頁無法打開的解決方案
- 01-10WinForm限制窗體不能移到屏幕外的方法
- 01-10WinForm繪制圓角的方法
- 01-10C#實現(xiàn)txt定位指定行完整實例
- 01-10WinForm實現(xiàn)仿視頻播放器左下角滾動新
- 01-10C#停止線程的方法
- 01-10C#實現(xiàn)清空回收站的方法
- 01-10C#通過重寫Panel改變邊框顏色與寬度的
- 01-10C#實現(xiàn)讀取注冊表監(jiān)控當(dāng)前操作系統(tǒng)已
隨機(jī)閱讀
- 01-10delphi制作wav文件的方法
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-10C#中split用法實例總結(jié)
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 04-02jquery與jsp,用jquery
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 08-05DEDE織夢data目錄下的sessions文件夾有什


