之前一直不太理解 rust 语言中原始类型中的数值类型取模运算(mod)和除运算(division)单独提供 rem_eucliddiv_euclid 的原因。

数学定义:

$$ {\displaystyle {\begin{aligned}&q,r\in \mathbb {Z} \\&a=nq+r\\&|r|<|n|\end{aligned}}} $$

在编程语言中,实现除运算根据运算取整的时候采用何种策略来区分有五种实现。

我常用的语言中: