« 飛鳥を歩く2013(その6)石舞台 | トップページ | 祝!世界遺産 富士山の図示を3次元でGoogle検索プロット! »

2013年5月 2日 (木)

年齢当てゲーム(好きな3つの数をあげてもらって、それで年齢を割った余りを聞いたら年齢がわかる)をカシオの高精度計算サイトに作ってみた。

塵劫記に百五減算として載っているものなのですが、年齢を3、5、7で割った余りを教えてもらえば、年齢がわかる方法がある。↓試してもらうにはこちら。

年齢当てゲーム

実際の計算は余りをそれぞれa,b,cとすると

x=70a+21b+15c (mod 105)

で実施している。

これは、実は3,5,7じゃなくても互いに素なものなら同じことができる。

70 mod 3 ≡1, 21 mod 5 ≡1, 15 mod 7 ≡1のように割る数を二つ選んで何倍かしてmodすると1になるような係数をつくればいい。

それには準備が必要。

まずは、、、中国剰余定理というか、拡張ユークリッド互除法での計算。

---

ax+by=cとなる整数a,b,c=GCD(x,y)を計算します。ただしx,yは自然数です。

拡張ユークリッド互除法

---

これができたら、これを使って合同式の逆元を求める。

---

a*x≡1 (mod m)となるx、つまりaの逆元を計算します。aは整数、mは2以上の整数です。

合同式の逆元

----

これができたらようやく最初の年齢当てクイズに使えるものができる。

好きな数をp,q,r(互いに素)として、例えばp*q*k mod r ≡1 となるようなkを求めるのに合同式の逆元計算を使っているのだ。

で最終的にできたものはこちら。

年齢当てゲーム(割る数字も選べる拡張版)

年齢当てゲーム(割る数字も選べる拡張版)

あなたの年齢を当てます。好きな数字3つをあげてもらって、その数それぞれで自分の年齢を割った余りを入力してください。ただし、その好きな数字は互いに素(お互いがお互いを割りきらない)としてください。

上限は好きな数字3つ全部を掛けた年齢までです。
好きな数字として、3、5、7を選ぶと百五減算になり、”年齢当てゲーム”として自作式に登録してあります。これはその拡張版です。
好きな数字1
 
好きな数字2
 
好きな数字3
 
好きな数字1で割った余り
 
好きな数字2で割った余り
 
好きな数字3で割った余り

なんというか、こんなシンプルなクイズを作るのに道具立てが大変、、、

« 飛鳥を歩く2013(その6)石舞台 | トップページ | 祝!世界遺産 富士山の図示を3次元でGoogle検索プロット! »

日記・コラム・つぶやき」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/512682/57295212

この記事へのトラックバック一覧です: 年齢当てゲーム(好きな3つの数をあげてもらって、それで年齢を割った余りを聞いたら年齢がわかる)をカシオの高精度計算サイトに作ってみた。:

« 飛鳥を歩く2013(その6)石舞台 | トップページ | 祝!世界遺産 富士山の図示を3次元でGoogle検索プロット! »

最近のコメント

2017年10月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
フォト
無料ブログはココログ