トップ «前の日記(2018-10-03(Wed)) 最新 次の日記(2018-10-06(Sat))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2018-10-04(Thu) 次の台風はまだ

a * a = b

かなり前に、算数の教科書かなにかで見かけた覆面算。
ただし、解は1つに定まらなかったはず。

    ピヨ
  + ピヨ
-------------
   ヒヨコ

頭で解いてから、 python3で実装して みた。
1段ループで桁の数字全部の異同をチェックする方法と、 ひと桁の変数4つを4段のループで回す方法と 。
この場合、後者のほうが少し遅いようだった。

$ time for x in `seq 500`; do python3 a+a_b.py > /dev/null; done
 
real    0m10.039s
user    0m8.673s
sys     0m1.394s
 
$ time for x in `seq 500`; do python3 a+a_b_2.py > /dev/null; done
 
real    0m11.170s
user    0m9.633s
sys     0m1.566s

micro:bit版も書いてみた。最初のイメージは一瞬だけ見えた。
計算時間は感じられなかった。

割り算と剰余より

文字列にしてインデックスを切り出したほうが明快で、 しかも速いようだ。
この場合のみ、かもしれないが、 前回の半分の時間で終わっている。

$ time python3 s2.py
9567 + 1085 = 10652
 
real    0m0.246s
user    0m0.234s
sys     0m0.012s

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。