モジュロ

計算結果を比較する

ダウンロード

この計算の入力内容と結果に加え、比較した追加の計算もすべて含まれます。

割り算で残る余りを求める

モジュロは、ある数を別の数で割った後に残る余りを求めます。 被除数と除数を入力すると、 この計算機は余りを返します — 単独の長除法で得られるのと同じ値です。

計算式

amodn=anan\vC{a \bmod n} = \vA{a} - n \left\lfloor \frac{\vA{a}}{n} \right\rfloor

ここで aa は被除数、nn は除数です — 余りとは、aa にまだ収まる nn の最大の整数 倍数を引いた後に残るものです。

計算例

17 mod 5:

    1. 17÷5=317 \div 5 = 3 余り 2\vC{2} — なぜなら 5×3=155 \times 3 = 15、そして 1715=217 - 15 = \vC{2} だからです。

考慮すべき主な要因

  • プログラミング言語や数学の慣習によって、負の数の扱いは異なります。 この計算機は、ほとんどのプログラミング言語(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つの数の共通因数や公倍数を扱っていますか?最大公約数・最小公倍数計算機は最大公約数と最小公倍数を求めます。
  • ある数自体が素数かどうか、またはどのように因数分解されるか気になりますか?素因数分解計算機は完全な素因数分解を表示します。

出典: モジュロ演算.

よくある質問

モジュロ演算とは何ですか?

モジュロ(しばしば「mod」または%と書かれる)は、ある数を別の数で割った後に残る余りを求めます。例えば、17 mod 5は2です。なぜなら17を5で割ると3余り2になるからです。これは長除法で得られる余りと同じもので、それだけを単独で報告するものです。

モジュロは負の数でどのように機能しますか?

この計算機は、多くのプログラミング言語が使用する「被除数の符号」の慣例を使用します: 余りは割られる数と同じ符号を取ります。例えば、-7 mod 3は(2ではなく)-1です。なぜなら-7を3で割ると、ゼロに向かって-2に丸められ、-1が残るからです。一部の数学の授業では、余りが常に非負になる慣例を教えています -- その方式が必要な場合は、負の結果に除数を加えてください。

モジュロは何に使われますか?

モジュロは何かが循環したり一巡したりする場面ならどこにでも現れます -- 12時間制の時計での時刻(13 mod 12 = 1時)、数が偶数か奇数かのチェック(n mod 2)、繰り返しパターンを均等に配置することなどです。プログラミングや暗号学の中核的な構成要素でもあります。

なぜ計算機やプログラミング言語によって負の数のモジュロで異なる答えが出るのですか?

一般的な慣例は2つあります: この計算機は「被除数の符号」(JavaScript、C、Javaと同じ)を使用しており、余りの符号は割られる数と一致します。Pythonや一部の数学の教科書は代わりに「除数の符号」を使用し、余りは常に除数の符号と一致します。どちらも数学的に有効な慣例です — 負の数の扱い方が異なるだけであり、これが同じ入力でもツールによって異なる結果に見える理由です。

モジュロは暗号学でどのように使われますか?

モジュラー算術 -- 固定された法のもとで繰り返し余りを扱うこと -- は、RSAのような広く使われている暗号方式の基盤であり、非常に大きな素数を使ったモジュロ演算に依存しています。この計算機が小さな数について計算するのと同じ基本的な余りの概念が、実際の暗号システムでは数百桁もの数にまでスケールします。

年齢を確認してください

アカウントを作成するには、生まれた月と年を教えてください。