R6RS:翻訳:R6RS:11.7.3.1 Integer division

R6RS:翻訳:R6RS:11.7.3.1 Integer division

11.7.3.1 整数の除算

Scheme で整数の除算を行なう演算は div、 mod、 div0、 mod0 といった数学演算に基づいてい、次のように定義されている。

div、 mod、 div0、 mod0 はそれぞれ実数 x1 と x2 を演算対象として取り、 x2 は 0 であってはならない。

div は整数を返し、 mod は実数を返す。結果は次のように規定される。

x1 div x2 = n_d
x1 mod x2 = x_m

このとき、
[image]
である。

:

 123 div  10 =  12
 123 mod  10 =   3
 123 div -10 = -12
 123 mod -10 =   3
-123 div  10 = -13
-123 mod  10 =   7
-123 div -10 =  13
-123 mod -10 =   7

div0 と mod0 は div と mod に類似であるが、 mod0 の結果は 0 を中心とした半開区間にある。結果は次のように規定される。

x1 div0 x2 = n_d
x1 mod0 x2 = x_m

ここで
[image]
である。

:

 123 div0  10 =  12
 123 mod0  10 =  3
 123 div0 -10 = -12
 123 mod0 -10 =  3
-123 div0  10 = -12
-123 mod0  10 = -3
-123 div0 -10 =  12
-123 mod0 -10 = -3

Last modified : 2012/02/02 12:10:40 UTC