Youtubeで「10033/12877を約分する」というのを見ました。どうするんだろと思ったら「連分数」というのを使うらしいです。
連分数というのは、分母を整数+分数の形にしたもの分の1にして、というのをどんどん進めていった分数のことです。
詳しくは連分数 – Wikipediaをご覧下さい。
これだったらPythonで簡単に作れると思って、今回作ってみました。あまり需要はないと思います…(^^;
今回Pythonスクリプト(.py)を作成・実行できるiPhoneアプリ「Pyto」とJupyterNotebook形式(.ipynb)を作成・実行できるiPhoneアプリ「Carnets」それぞれで作ってみました。
Pytoに関しては、ショートカットからパラメータを渡して実行できるので、ショートカットアプリも作ってみました。
以下のリンクからスクリプトをダウンロードして下さい。
Download ScriptPyto – 約分&最大公約数
Download Scriptショートカット – 約分&最大公約数
Download ScriptCarnets – 約分&最大公約数
Pyto単体の場合
▼スクリプトの最初の方にあるchildに分子の数値、parentに分母の数値を入力して(デフォルトで分子=10033、分母=12877になってます)、右上の実行ボタンをタップ
▼下のコンソールに結果が表示されます。
10033/12877は最大公約数79で、127/163に約分できることがわかります。
10033=79×127、12877=79×163なのであってるようです。
ショートカットから実行する場合
上で説明した方法だと、毎回スクリプトを書き換えないとダメですが、ショートカットからだと分子、分母をパラメータとして渡すことで実行できるので便利です。
ここでは分子=6771、分母=7381の場合で説明します。
▼ショートカットの「約分&最大公約数」のマークをタップ
▼分子に6771を入力して完了をタップ、分母に7381を入力して完了をタップ
▼Pytoが起動して、下のコンソールに結果が表示されます。
いちいちスクリプトを書き換えないで済むので便利です。(^^)
Carnetsの場合
これはJupyterNotebook形式なので、外部からパラメータを渡すことは出来ないようです。
▼最初のセルのchildとparentを書き換えて下さい。デフォルトは分子=10033、分母=12877です。
▼それぞれのセルを実行すれば、3番目のセルに最大公約数、5番目のセルに約分結果が表示されます。
こちらも同じ結果が得られました。
今回PytoとCarnetsでスクリプトを作りましたが、それぞれ.py、.ipynbなのでデスクトップでも使えると思います。
あまり需要はないかもしれませんが、中高生のお子さんがいる方は使ってみては?
happyChappy(@happyChappy1115)でした。
Sponsored Link