プロが教えるわが家の防犯対策術!

MOD関数を使って、1を2で割った余りが「1」になるのはなぜでしょうか。すみませんが、よろしくお願いします。

A 回答 (3件)

試しに添付図で見比べてみましょう。



MOD(3.5, 2)だと,余り1.5です。
MOD(1, 2)は,商としてゼロが立ち,余りは1です。




>1を2で割った余りが「1」になるのはなぜでしょうか

1の中に2は1個も取れないので,商はゼロになります。すると残りの値としての余りは1になります。

ある意味基本的(自明)なこと過ぎて,何故と聞かれてもなかなか皆さん答えにくいと思います。
例えば「こういう事なら判るんですが,こうなるんじゃないでしょうか」みたいな,あなたが「ここまでは判っている事」も,一緒にご質問に書いてみると良かったかも知れませんね。
    • good
    • 0
この回答へのお礼

単純に1を2で割ったら0.5なので、なぜ余りが「1」なのかなと思ったのですが、商はゼロで残りの値として余り1をとるということなのですね。ありがとうございました。

お礼日時:2010/04/20 11:29

そのような質問をされるということは、1を2で割った余りが「1」でなく何か他の値だったら貴方は納得されるのでしょうか?それは何?

    • good
    • 0

1を2で除算すると、商は0で余りは1です。


逆算すると、0×2+1=1 となります。

これは除算の性質なので、「なぜ」と尋ねられても答えようがありません。
    • good
    • 1
この回答へのお礼

逆算するとそういう意味なんですね。。。ありがとうございました。余談ですが、MOD関数の仕様に、「数値が、除数よりも小さい場合は数値をそのまま返します。」ということが記載されてあるサイトを見つけました。ありがとうございました。

お礼日時:2010/04/20 14:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています