2169-euclidean-modulo - The Rust RFC Book
https://rust-lang.github.io/rfcs/2169-euclidean-modulo.html
ちなみに Rust では両方欲しくなることあるよねということで両方用意された
i32 - Rust
https://doc.rust-lang.org/stable/std/primitive.i32.html#method.rem_euclid
div_euclid() や rem_euclid() における剰余は必ず0以上除数未満になる