基本情報技術者
じゃんけんのアルゴリズムなのですが、①~③の表の説明を見ていてわからない部分を最後記載したので、お手数ですがご教授ください
参考URL
http://staku.designbits.jp/check-janken/
勝ちの -1 と 2、負けの -2 と 1 は、どちらも 3 離れてます。2 - (-1) = 3、1 - (-2) = 3 です。ということは、a - b の答えに 3を足して正の数にスライドさせ、その数の 3 の剰余(3で割ったあまり)を出せば、3通りに絞れるはずです。計算式は、(a - b + 3) % 3 ということになります。ちなみに '%' は剰余、割り算した時のあまり、という意味です。
質問
とここまで解説を書き連ねましたが、(a - b + 3) % 3の計算を①の表にあてはめて使ってみると、Aさんグー(0)―(-1)Bさんチョキ+3% 3で余りが1となるため、
正解であるはずの2になりません。
逆に、Aさんパー(2)―(0)Bさんグー +3% 3では余りが2になるので正解になります。
・あいこ … 必ず 0
・勝ち …… -1 または 2
・負け …… -2 または 1
→勝ちは2 負けは1 あいこは0に集約できません。
なぜでしょうか?