もう一人のY君

iPhoneアプリのレビューやアップデートレビューなどを書いています. たまに数学の記事も書きます.

もう一人のY君 MENU  MENU

【iPhoneショートカット】make10(テンパズル)検証レシピ

f:id:thetheorier:20201015124408p:plain

 一番シンプルなルールです, 車のナンバーを見ると何とやらというアレ.

 

 

ショートカット

ショートカット

  • Apple
  • 仕事効率化
  • 無料

※価格は記事執筆時のものです. 現在の価格はApp Storeから確認ください.

 レビュー時のiOSバージョン : iOS14.0.1

 

 

スポンサーリンク

 

 

 

ダウンロード

 

https://www.icloud.com/shortcuts/224460beccc14345be23bac715177143

 

 

Make10(テンパズル)とは

 ご存知の方には説明不要ですが, 簡単に説明すれば「4つの数字と四則演算を使って10になるような組み合わせを考える」という遊びです.

 

 例えば6,5,9,3なら6×5÷9×3=10になります.

 

 組み合わせ次第では複数通りあったり10になる組み合わせがない場合もあります.

 また追加ルールもそれぞれで,

 

  • 順番を入れ替えてもOK
  • 括弧を使ってもOK
  • 指数を使ってもOK
  • 三角関数を使ってもOK
  • 数論的関数(1からnまでの和T(n), nの正約数の個数d(n)などなど)を使ってもOK

 

などなど, たくさんあります.

 今回は上記の追加ルールの一切ない, もっともシンプルなものに制限しています.

 

 

使い方

f:id:thetheorier:20201015124620p:plain

 4つの数を","で区切って入力すると, その並びで四則演算の結果が10になるような式が全部並びます.

 

 

f:id:thetheorier:20201015130117p:plain

 そのような組み合わせがなければその旨のアラートが表示されます.

 

 

フロー(一部)

f:id:thetheorier:20201015130236p:plain

 4数はともかく, 間に入る四則演算の並びをどうしようか考えた結果, 4進数を利用することにしました.

 4数に入る演算記号は全部で3つなので四則演算だけなら4^3=64通り.

 なので10進数の0から63, 4進数で言うと000(4)から333(4)について, この4進数3桁の数それぞれを1つ目の演算, 2つ目の演算, 3つ目の演算とし, 各桁の値が0なら+, 1なら-, 2なら×, 3なら/に割り当てます.

 

 例えば10進数の39は4で割った余りが3でこれが1つ目, 39から3を引いた36を4で割った9を4で割った余りが1でこれが二つ目, 9から1を引いた8を4で割ったのが2でこれが3つ目…なのでこの場合は39(10)=213(4)というわけです.

 2×16+1×4+3=32+4+3=39なので合ってますね.

 このような力技で無理矢理四則演算の全パターンを各変数にぶち込みます.

 

 

f:id:thetheorier:20201015130615p:plain

 しかしそんな力技でも結果を出せるのは「計算式」アクションのお陰です.

 これが無かったらレシピ自体作る気は起きなかったでしょうね…

 該当する組み合わせを「10に等しい」でなく「0.99と10.01の間」にしたのは「計算式」による誤差対策です.

 もっとシビアにしても良いかもしれません.

 ここを他の数に置き換えれば10以外のパターンも可能です.

 

 

 一番シンプルなルールでもアクション数88になってしまいました.

 ここから並び替えOKにしたり指数OKにしたりしたらと思うととても挑戦する気にはなれませんでした.

 

 もっと違う発想でスッキリしたレシピになるんでしょうかね…