はじめに G.ポリアの「いかにして問題をとくか」という本があります。 主に数学の問題に対する解き方という内容ですが、一般的な問題に対しても使うことが可能ということで名著と呼ばれるくらいにいろいろな分野で読まれている本です。 ちなみに実践活用編というのもあるみたいですが、こっちは未読です。 今回は「FizzBuzz問題」というプログラムでよく使われる問題に対して、これを適用してみます。 言語はJavaScriptで書きますが(楽だから)、コードよりも解決にいたるプロセスを追うことのほうが重要ですので、あまり関係ないです。 前提 「いかにして問題をとくか」 この本で紹介されている問題解決のプロセスは以下の4段階に分かれます。 各プロセスの内容は今回特に使うものを抜粋しています。 問題を理解する 既知のものは何か。 未知のものは何か。 条件は何か。 条件を分離できるか。 図をかけるか。 計画を立