プログラミング言語でのアルゴリズムの書き方

ページ名:プログラミング言語でのアルゴリズムの書き方

アルゴリズムとは、問題を解決したりタスクを達成したりするために設計された一連のステップのことである。アルゴリズムは通常、プログラムを書く前に擬似コード、またはあなたの話す言語と1つ以上のプログラミング言語の組み合わせで書かれます。このWikiHowでは、アプリケーションを開始するためのアルゴリズムを作成する方法を説明します。

  • 1
    コードの結果を決定します。解決したい具体的な問題や、達成させたいタスクは何ですか?何を達成しようとしているのかが明確になれば、そこに到達するために必要なステップを決めることができます。
  • 2
    出発点を決める。プロセスのステップをリストアップするには、起点と終点を見つけることが重要です。出発点を決めるには、以下の質問に対する答えを決めます:
    • どのようなデータ/インプットが利用可能か?
    • そのデータはどこにあるか?
    • そのデータはどこにあるのか?
    • 利用可能なデータを使用する際のルールは何か?
    • データ値は互いにどのように関連しているか?
  • 3
    アルゴリズムの終点を見つける。出発点と同様に、以下の質問に焦点を当てることで、アルゴリズムの終着点を見つけることができます:
    • このプロセスからどのような事実を学ぶか?
    • 開始から終了までに何が変わるか?
    • 何が追加されるのか、あるいは存在しなくなるのか?
  • 4
    開始から終了までのステップを列挙する。大まかなステップから始める。実際の例で言うと、あなたのゴールが夕食にラザニアを食べることだとします。出発点はレシピを見つけることで、最終結果は午後7時までに完全に調理されたラザニアが食べられるようにすることだと決めました。あなたのステップは次のようなものだろう:
    • ネットでレシピを探す。
    • キッチンにある材料を探す。
    • お店で必要な材料をリストアップする。
    • 足りない材料を買う。
    • 帰宅する。
    • ラザニアの準備をする。
    • オーブンからラザニアを取り出す。
  • 5
    各ステップをどのように達成するかを決めます。ステップ・バイ・ステップのアウトラインができたので、次は各ステップをどのようにコーディングするかを考えましょう。どの言語を使いますか?利用可能なリソースは? その言語で各ステップを達成する最も効率的な方法は何か?そのコードの一部をアルゴリズムに組み込む。プロセス全体を詳述するまで、各ステップを拡張する。
    • 例えば、私たちのラザニア・アルゴリズムの最初のステップは「オンラインでレシピを検索する」です。しかし、この検索には何が関係しているのでしょうか?具体的に説明しましょう。例えば
      • コンピュータの電源を入れる。
        • インターネットに接続されていることを確認する。まだインターネットに接続していなければ接続する。
      • ウェブ・ブラウザを開く。
      • 検索語を入力する。
      • レシピのリンクをクリックする。
      • レシピがあなたのニーズに合っているかどうかを判断する。
        • ベジタリアンでないレシピを除外する。
        • 少なくとも5人前のレシピであることを確認する。
      • 適切なレシピが見つかるまで、これらのステップをいくつか繰り返します。
    • プログラムを開発するシステムの能力など、自由に使えるリソースを考慮する。ラザニアの場合、ラザニアを作る人がインターネットを検索する方法やオーブンを操作する方法などを知っていると仮定します。
  • 6
    アルゴリズムを見直すアルゴリズムが書けたら、次はそのプロセスを評価しましょう。あなたのアルゴリズムは何かを達成するために設計されており、プログラムを書き始めるために必要です。以下の質問を自問し、必要に応じてそれぞれに対処してください:
    • アルゴリズムは問題を解決し、タスクを達成しているか?
    • 入力と出力は明確に定義されているか?
    • 最終目標は、より一般的なものに定義し直すべきか?より具体的か?
    • どのステップも単純化できるか?
    • アルゴリズムは正しい結果で終わることが保証されているか?
  • この記事は、CC BY-NC-SAの下で公開されている " How to Write an Algorithm in Programming Language " を改変して作成しました。特に断りのない限り、CC BY-NC-SAの下で利用可能です。

    シェアボタン: このページをSNSに投稿するのに便利です。

    コメント

    返信元返信をやめる

    ※ 悪質なユーザーの書き込みは制限します。

    最新を表示する

    NG表示方式

    NGID一覧