割り算で残る余りを求める
モジュロは、ある数を別の数で割った後に残る余りを求めます。 被除数と除数を入力すると、 この計算機は余りを返します — 単独の長除法で得られるのと同じ値です。
計算式
ここで は被除数、 は除数です — 余りとは、 にまだ収まる の最大の整数 倍数を引いた後に残るものです。
計算例
17 mod 5:
- 余り — なぜなら 、そして だからです。
考慮すべき主な要因
- プログラミング言語や数学の慣習によって、負の数の扱いは異なります。 この計算機は、ほとんどのプログラミング言語(JavaScript、C、Java)で一般的な「被除数の符号」に従う慣習を使用しています — しかしPythonの
%演算子や一部の数学の教科書は、結果が常に除数の符号に一致する慣習を使用しており、同じ負の入力に対して異なって見える答えを出すことがあります。 - a mod nの結果は常に0からn-1の間にあります(非負の慣習を使う場合)。これがまさにモジュロが「ラップアラウンド(折り返し)」の動作に使われる理由です。 この範囲が有界であるという性質が、モジュロを周期的なものすべてにとって自然なツールにしています — 時計の計算、曜日、折り返す配列のインデックス、繰り返しパターンはすべて、この同じ有界な折り返しの動作に依存しています。
- ある数が偶数か奇数かを確認することは、単にモジュロ2にすぎません。 どんな数もモジュロ2を取ると0(偶数)か1(奇数)のどちらかになります — これは日常的なプログラミングにおけるモジュロの最もシンプルでよくある実用例の一つです。
- モジュロは、特に大きな素数を扱う暗号学における基礎的な演算です。 剰余算術(固定された法の下で余りを扱うこと)は、RSAのような広く使われている暗号化方式の基盤となっています — この計算機が計算するのと同じ基本的な余りの概念が、実際の暗号応用では数百桁もの数にまでスケールアップされます。
よくある間違い
- モジュロは常に非負の結果を返すと思い込んでしまう。 この計算機の「被除数の符号」に従う慣習では、負の被除数は負の(またはゼロの)余りを生成します — ツール間で結果を比較する前に、実際に必要な慣習を確認してください。
- モジュロを普通の割り算と混同してしまう。 モジュロは余りだけを返し、商は返しません — 17を5で割ると3.4ですが、17 mod 5は2で、まったく異なる目的に使われるまったく異なる数値です。
- 法が0の場合は定義されないことを忘れてしまう。 ゼロで割ることに答えがないのと同様、a mod 0にも答えはありません — 計算機やプログラムはこれをエラーとして扱うべきであり、黙って0や被除数をそのまま返すべきではありません。
- どちらの数が被除数でどちらが除数かを混同してしまう。 特殊なケースを除き、a mod nはn mod aと同じではありません — 2つの順序を入れ替えると、符号だけでなく結果全体が変わります。
知っておくと役立つこと
- 余りだけでなく、商と余りの両方をステップごとに見たいですか?筆算割り算計算機は長除法の全過程を示します。
- 余りではなく、2つの数の共通因数や公倍数を扱っていますか?最大公約数・最小公倍数計算機は最大公約数と最小公倍数を求めます。
- ある数自体が素数かどうか、またはどのように因数分解されるか気になりますか?素因数分解計算機は完全な素因数分解を表示します。