跳至內容

有理數 (數據類型)

維基百科,自由的百科全書

有些程式語言提供內置的有理數數據類型來精確表示有理數(如 1/3 或 -17/29),而不需要四捨五入。

有理數操作

[編輯]

該類型的變量通常表示為分數 m/n,其中 m 和 n 是兩個整數,具有固定或任意精度。根據語言的不同,分母 n 可以限制為非零,並且兩個數字可以保持簡化形式(除 1 外沒有任何公約數)。

支持有理數據類型的語言通常提供用於構建此類值的特殊語法,並且還擴展了基本的算術運算以作用於它們。這些操作可以由編譯器轉換為整數計算指令序列,或轉換為庫調用。支持還可以擴展到其他操作,例如比較、格式化、四捨五入為整數浮點數等。與數學上的看法一樣,需要類型轉換時,這些語言通常將整數解釋為帶有分母 1 的有理數。

語言支持

[編輯]
  • C++ 以其標準庫 <ratio> 的形式包含有理數及其算術的支持。
  • Python標準庫有Fraction來支持有理數及其算術。

參考

[編輯]