sinkope is not kind of paradoxical existence

🎼 🎹 🏀 🌠 🚶 👣 📷 💻 🎨 🎮 📖 and more !

ナンバープレート症候群

いろもの物理学者さんの日記に、4つの数字を四則演算を使って10にする、という話が載っている(元は前の日か)。
かくいうワシも、切符を買った時に印字されてる連番とかクルマのナンバープレートとかでよくやっている。これ、中毒になると4桁の数字を見た瞬間に頭で計算始めてしまう症状が出るのよね。運転してる時に解けない組み合わせのナンバー見ちゃった時なんか、かなり危険。
で、いろもの物理学者さんも「総当りで0000〜9999を調べたら‥‥」という話を子供の自由研究のネタとして振っているが、そういえばワシそれ新入社員の頃に暇つぶしでプログラミングしたなぁ、と思い出した。確か当時はCOBOLで作ったんだけど(笑)、「総当り計算するプログラムスクリプトを作るメタプログラム」→「出来たプログラムを実行して総当りの可否リストな10000行テキストファイルを作成」→「RDBに入れて、組替え分の可否を解析」みたいにステップ分けして作っていたような。
今だったらPHPでバババっと作れるかな‥‥と、やっつけでフルスクラッチしてみた。こういう力仕事なプログラムは得意です、ええ。
で、こんなプログラムを組んで、実行。今度は1本のプログラムで済ませてしまう。
おおおおお‥‥(笑
出来た結果がコレ。(超デカいので、右クリックで一旦ローカルに保存した方がいいかも)
一番後ろに100×100のマトリックスを組んである。0000〜9999まで、100個ずつ横に並べてあるのね。緑色のはそのガイド。1桁数字で結果を各々色で区分けしてあって、黒が不可、青が可、赤は並び替えれば可、可能分はリンクを張って式を閲覧出来るようになっている。
小数点以下10桁で四捨五入する簡易的な方法で10の近似を取っているので、厳密には間違えている箇所があるかも知れない。まぁ1733とか3748が合ってるようなので、大丈夫だろう。多分。
8200台は全部可能なのね。興味深いなァ。