本文簡要介紹rust語言中 f32.rem_euclid
的用法。
用法
pub fn rem_euclid(self, rhs: f32) -> f32
計算 self (mod rhs)
的最小非負餘數。
特別是返回值r
在大多數情況下滿足0.0 <= r < rhs.abs()
。但是,由於浮點舍入誤差,如果 self
的大小遠小於 rhs.abs()
和 self < 0.0
,則可能導致 r == rhs.abs()
違反數學定義。該結果不是函數餘域的元素,但它是實數中最接近的浮點數,因此近似滿足屬性self == self.div_euclid(rhs) * rhs + self.rem_euclid(rhs)
。
例子
let a: f32 = 7.0;
let b = 4.0;
assert_eq!(a.rem_euclid(b), 3.0);
assert_eq!((-a).rem_euclid(b), 1.0);
assert_eq!(a.rem_euclid(-b), 3.0);
assert_eq!((-a).rem_euclid(-b), 1.0);
// limitation due to round-off error
assert!((-f32::EPSILON).rem_euclid(3.0) != 0.0);
相關用法
- Rust f32.recip用法及代碼示例
- Rust f32.round用法及代碼示例
- Rust f32.exp用法及代碼示例
- Rust f32.hypot用法及代碼示例
- Rust f32.minimum用法及代碼示例
- Rust f32.sqrt用法及代碼示例
- Rust f32.abs_sub用法及代碼示例
- Rust f32.cos用法及代碼示例
- Rust f32.is_sign_positive用法及代碼示例
- Rust f32.log10用法及代碼示例
- Rust f32.total_cmp用法及代碼示例
- Rust f32.from_ne_bytes用法及代碼示例
- Rust f32.sinh用法及代碼示例
- Rust f32.ln_1p用法及代碼示例
- Rust f32.min用法及代碼示例
- Rust f32.to_bits用法及代碼示例
- Rust f32.from_be_bytes用法及代碼示例
- Rust f32.atan2用法及代碼示例
- Rust f32.from_bits用法及代碼示例
- Rust f32.to_radians用法及代碼示例
- Rust f32.atanh用法及代碼示例
- Rust f32.cbrt用法及代碼示例
- Rust f32.to_be_bytes用法及代碼示例
- Rust f32.maximum用法及代碼示例
- Rust f32.is_infinite用法及代碼示例
注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 f32.rem_euclid。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。