• 締切済み

負の数の割り算の余り

a<0,b<0のとき a÷bの余りの符号ってどうなるのですか? (-6)÷(-4)=1余りー2 (-6)÷(-4)=2余り2 とどっちの計算が正しいのですか?負の数の割り算の余りの概念が分からず悩んでいます。計算機を利用したところ負の数÷負の数の余りは必ず負の数になるようです。どうしてなのですか?分からないので知っている人はぜひ教えていただきたいです。お願いします

みんなの回答

  • rinkun
  • ベストアンサー率44% (706/1571)
回答No.8

In No.7 >  m = qn + r かつ 0 ≦ r < n m, nが正の場合はこれで良いんですよ。でもnが負だとこの式は絶対に満たせないでしょ。 だから「どう拡張するか」が肝なんです。 ふつう   m = qn + r かつ |r| < |n| は要求します。これで答えは2通り。 あとは   0 ≦ r < |n| を要求するか、(質問の例では(-6)÷(-4)=2余り2)   |m| = |q||n| + |r| を要求するか。(質問の例では(-6)÷(-4)=1余りー2) # 他の流儀もあったかな

全文を見る
すると、全ての回答が全文表示されます。
  • proto
  • ベストアンサー率47% (366/775)
回答No.7

定義によるのでしょうけど、ちょっと調べたら   m = qn + r かつ 0 ≦ r < n が出てきました。 ここでは0≦r<nと決めてあるから。 余りは一通りになりますよね。 m=qn+rだけで考えると正数の割り算でも余りは無限に多くの場合が当てはまりますよ。

全文を見る
すると、全ての回答が全文表示されます。
  • mide
  • ベストアンサー率44% (333/745)
回答No.6

既に回答があるように、定義しだいです。計算機といっても処理系依存の場合もあり、一意には決まりません。計算機言語でも、Adaなど両方の演算を用意しているものもあります。

全文を見る
すると、全ての回答が全文表示されます。
  • rinkun
  • ベストアンサー率44% (706/1571)
回答No.5

No.3は間違いです。 No.3の参考URLでも後半で他の流儀もあると書かれているように、余りを正にするのも一つの流儀にすぎません。 プログラマーを侮辱するNo.3のような回答は許容できません。 整数の除算がどちらの結果になるかは定義しだいです。 先生が決めた定義があるならそれに従ってください。ない場合は一貫性を持てばどちらでも良いでしょう。

全文を見る
すると、全ての回答が全文表示されます。
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.4

「計算機を利用しても」とは言っても, プログラム言語によってどうなるかは異なりますね.

全文を見る
すると、全ての回答が全文表示されます。
  • zza
  • ベストアンサー率21% (27/125)
回答No.3

一応、あまりは「正の数」って決めてあるようです。 計算機の場合はプログラムの仕方によってそのようになることも多いみたいですね。これは計算機のプログラマーが数学の決まりをよく知らなかったためこのような計算が広まってしまったのではないでしょうか。

参考URL:
http://ja.wikipedia.org/wiki/%E4%BD%99%E3%82%8A#.E4.B8.80.E8.88.AC.E5.8C.96
gengen4
質問者

お礼

早急な回答ありがとうございます(^口^) 余りは正で定義するのですね。zzaさんの説明も分かりやすく、参考URLも分かりやすく助かりました。自分はパソコンでプログラムを作って計算したのですが、計算機では答えが負になってしまいます(;;)まじやっかいです。しかもこの問題はプログラミングの授業の先生が「テストにだすよ~」と言っていたのでプログラマーの誤った定義を書けばいいのかな???まじやっかいです(笑) 本当に分かりやすい説明ありがとうございました。今後良回答がでない限りポイントを送らせていただきます!!

全文を見る
すると、全ての回答が全文表示されます。
  • timer1
  • ベストアンサー率32% (21/65)
回答No.2

Aを割られる数、Bを割る数、Rを商、Qを余りとして割り算を等式で表すと  A=B*R+Q これにA=-6、B=-4、R=1を代入すると分かりますが、余り-2が正しいです。  

gengen4
質問者

お礼

早急な回答ありがとうございます(^口^) A=B*R+Qていうのはすごい大事な式ですよね!確かに(-6)=(-4)*1+(-2)は成立しますね!! でもやっかいなことに(-6)=(-4)(-2)+2でもその式は成立してしまうんです(;;)答えが二通りある割り算なんておかしいですもんね(;;)

全文を見る
すると、全ての回答が全文表示されます。
noname#74443
noname#74443
回答No.1

 私は専門家ではありません。  わり算の基本は     割られる数>割る数×商 だと思います。  a<0,b<0の場合もa,bそれぞれの絶対値で考えれば、上の1あまり-2が正しいと思います。

gengen4
質問者

お礼

早急な回答に感謝します(^口^) 割られる数>割る数×商 ですよね。絶対値を取って考えれば1余りー2で理にかなっていますよね(><) でも本当の負の数の割り算の定義に基づいたらどう説明がなされるのでしょうかね?とても気になるところです!本当に早急な回答ありがとうございました!!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 割り算の余りについてです。

    こんな事をご質問するのはとっても恥ずかしいのですが 割り算の余りについてです。 EXCELで計算すると、4/7の余りが4になるのですが 「3」ではないのでしょうか? どうして「4」になるのでしょうか?

  • 割り算の余りの求め方

    割り算の余りを求める計算式ってありますか(簡単な) チェックデジットの計算で「7で割った余り」というものがあり その説明で、「7で割った余り」の計算方法の説明に困難しています。 簡単な式や説明方法を知りたいのです。 (チェックデジットをご存じでない方は、チェックデジットについては無視してください) 今のところ、「7で割って、答えの整数を元の数字から引きなさい」と説明しています

  • 割り算の余りは・・・

    割り算の余りを求める問題  「xは整数とする。   (x^2+x+1)^1234 を x^3+x^2+x+1 で割った余りを求めよ」 一体何を計算すれば良いのかさっぱり分かりません。因数分解も試みたのですがまるっきり駄目でした。 誰かこの問題を解くカギを教えてください!

  • 余りの定義について

    余りについてなんです。多項式について割り算の定義は理解しているんですが、普通の数の割り算について割られるかずが負のとき、その余りについて負も許容すると二通り以上作れませんか?それって多項式の時の割り算の定義である、商と余りは商の次数>あまりの次数の時、一通りであることに矛盾しませんか? 例えば-21=5×-(4)+(-1)=5×(-5)+4=5×(-3)+(-6) しかし合同式の定義によれば余りは負も許容してますよね? これはどういう事なんでしょうか。 よろしくお願いします。

  • 負の数

    負の数 借金は0より小さい数なのに なぜ借金2000のようにマイナス符号ではなくプラス符号なのですか?

  • 負の数の除算

    ふと、疑問に思ったので、質問させていただきます。 負の数の割り算は、2進数だとどのような計算をしているのでしょうか? たとえば、-2/2が内部ではどのように扱われているかが知りたいです。 一度補数を戻してから計算しているのでしょうか? 0xFFFFFFFE / 0x00000002 なので、普通に計算すると値が変わってしまうので 基礎的なことですみませんが、よろしくお願いします

  • 正と負の数の関係

    0でない3つの数A、B、Cがあり、次の計算の答えが常に負の数になるとき、A、B、Cはそれぞれ、正の数、負の数、どちらとなるか。  A×B-(C+A)

  • 分数の割り算で余りを求める方法を教えてください。

    1÷(7/240)=34余り1/120 上記計算のように、分数の割り算で余りを求めなければならない場合、どのような方法で計算するとわかりやすいのでしょうか。 小学生で理解できる方法を教えてください。 仕事算で用いた計算です。 他中学受験算数で、こういった計算を使うことはあるのでしょうか。

  • マイナスの割り算

    マイナスの割り算の余りはどうなりますか? -5 ÷ 3 のあまりは-2ですか?それとも1ですか? 私の持ってるmodの計算ができるスマホの計算機で計算すると-2となりますが マイナスはおかしいと説明しているサイトもあります マイナスは余りではなく「足りないで、余りは1である」と説明しています そう言われてみればそのような気もしますが計算する環境によって違うのでどうなってるのか疑問に思いました。 プログラミングを利用して結果を見た結果 pythonだと-5%3は1になります C/C++だと-5%3は-2になります あまりとしてはどちらが正しいのでしょうか?

  • 負の2進数の表示がわかりません

    Q1:負の数(例えば10進数の[-2])を2進数,4ビットで表すには, 1010(MSDの[1]は[-]を表して,後半の3桁は[2])か 1110([0001]の2の補数) どちらが正しいのですか?(学校ではどちらも習いました) またQ2のような計算をするには補数による表示でないとなりませんか?(絶対値に符号をつけるだけだと計算が合いません) Q2:4ビットで表された2進数の計算で    0101-0010=0101+(1110)=10011 となり,答えが5ビットになってしまいます.下4桁で考えると答えが合っている気がします.これで合っていますか?

このQ&Aのポイント
  • 複合機からPCにスキャナーができなくなった原因と解決方法について相談します。
  • 複合機のスキャナーがPCとの接続で問題が発生しており、解決策を探しています。
  • カスペルスキーセキュリティの影響で複合機からPCにスキャナーが使用できなくなった状況について質問です。
回答を見る