0
我必須在球拍中運行一些我從未使用過的運算。在球拍中定義單精度變量
我該如何強制它計算一個或一半(如果有的話)精度浮點數?
我想通了,如何使它在大彩車計算:
(bf/ (bf 1) (bf 7))
我知道,浮動的縮寫(雙精度)是FL。儘管如此,我無法弄清楚單個花車的正確縮寫。
我必須在球拍中運行一些我從未使用過的運算。在球拍中定義單精度變量
我該如何強制它計算一個或一半(如果有的話)精度浮點數?
我想通了,如何使它在大彩車計算:
(bf/ (bf 1) (bf 7))
我知道,浮動的縮寫(雙精度)是FL。儘管如此,我無法弄清楚單個花車的正確縮寫。
您引用的'bigfloat'包爲任意精確浮點數。正如你指出的那樣,你不太可能想要這些。
這聽起來像你正在尋找標準的IEEE 64位浮點數。球拍默認使用這些,對於所有不精確的算術。
所以,舉例來說:
(/ 1 pi)
產生
0.3183098861837907
一個可能的卸料,上部是將2個有理數時,結果將再次成爲一個有理數。所以,舉例來說,
(/ 12347728 298340194)
產生
6173864/149170097
您可以通過使用exact->inexact
(始終有效)強制不精確算術,或確保你的文字帶有小數結尾(除非你使用htdp語言)。
所以,舉例來說:
(/ 12347728.0 298340194.0)
產生
0.04138808061511148
讓我知道這不回答你的問題....
謝謝您的回答。有沒有辦法強制球拍計算32位或16位浮點數? – UserAnonymous
您可以使用'real-> single-flonum'生成32位浮點數,或者直接將其指定爲例如。 3.243f0或3f-2。我不相信16比特花車的球拍有任何支持。你可能知道你在做什麼,但是在現代機器上,32或16位浮點數是個好主意的情況並不多。即使在音頻應用中,64位雙打似乎也在接管。希望這可以幫助! –
@JohnClements精度較低的浮點開始重新出現在機器學習應用程序中。 https://arxiv.org/pdf/1412.7024.pdf,普通機器學習通常是單精度(32位),而不是雙精度,因爲GPU執行單精度計算。 –