擬似コードとアルゴリズムの違いは何ですか?

Anonim

非常に単純に言えば、 Pseudocode はアルゴリズムロジックを説明するナレーションです。実行可能コードではないため、正確な構文を使用することは必須ではありませんが、ソリューションチームが容易に理解できる、業界で広く使用されている標準に従うと便利です。

<! - 1 - > <純粋なテキストベースではなく、実行可能なタスクまたはプロセスの視覚的表現を提供するために使用されます。

<! - 2 - >

擬似コードが存在しない場合は、その擬似コードを正確に翻訳するのに役立ちます。アルゴリズムでは、解を考えたり、あいまいなアイデアを抽出するのに不必要な時間が費やされます彼はステージをコーディングし、通常は期限が迫っています。

アルゴリズムのトラブルシューティングを行う際に、擬似コードはバックグラウンドの考え方を提供し、開発者は常にそれを理解するのに役立つかもしれないし、そうでないかもしれない。

Khan Academy

[i]

<!この擬似コードの例を見てください。 - 3 - > これはソフトウェア開発ツールで作成されたテキストベースの擬似コードです。前のストロークは//テキストがコメントである(または開発の観点からコメントアウトされている)ことを示しているため、実行可能コードの一部ではありません。

下の太字のテキストは、擬似コードの要件から実行可能なコードに解釈する際の開発者の構文とディメンションを示しています。

//私たちのアイデアをコードにどのように取り入れるか?

300 999)。

// 2つの目、2つの楕円、顔の約2/3、顔の1/5の楕円(幅/

2

-

40 < 、 楕円形(幅/ 2 999 +999、高さ/ 999999999,999999、999999、 40999)。 次の例は、より技術的で構造化されたアプローチの擬似コードを示しています。 生徒の成績が60以上の場合 Print "Well Done! " else Print" Sorry、failed " 構造化擬似コードを参照する場合、 SEQUENCE

WHILE IF-THEN-ELSE

および有用である追加の構築物には、REPEAT-UNTIL 999,999および999が含まれる。 これらの用語は開発者が理解し、他人が理解できない可能性のあるスラングや個人的な言葉を使わずに要件を構築するのに役立ちます。 SEQUENCE は、タスクの連続した実行を上から下へ示す。 WHILE は、開始時に定義された条件が満たされるまで実行される反復ループです。 IF HoursWorked> NormalWeek THEN 時間外タイムゾーンのメッセージを表示する ELSE 通常のタイムシートメッセージを表示する IF-THEN-ELSE REPEAT-UNTIL は、最後に定義された条件が満たされるまで実行される反復ループです。 例 UNITL条件 CASE

は、式の値に基づいて複数の決定を提供する。 FOR は繰り返しカウントループです。 各タスクまたはプロセスについて、最後に END / ENDIF (IFが使用される場合)を使用します終了点または出力結果であることを示します。コンストラクトが互いにネストされている場合、それらは親コンストラクトからはっきりとインデントされなければなりません。つまり、依存関係を示すすべてのステートメントはインデントされる必要があります。動詞では、「やっている」という言葉は、プロセス、コンピュータ、リセット、インクリメント、追加、掛け算、印刷、表示などの用語を使用し、インデントが望ましい擬似コードを促進することに注意してください。 ここで、アルゴリズムと、それらが擬似コードとどのように異なるかを見てみましょう。 まず、 アルゴリズム とは何ですか? "非公式には、アルゴリズムは、ある値または値の集合を入力とし、ある値または値の集合を

出力として生成する明確に定義された計算手順です。したがって、アルゴリズムは、

入力を出力

に変換する一連の計算ステップです。 "

[ii]

簡単な言葉でいうと、アルゴリズムとは、問題を解決したりタスクを完了させる一連の手順で定義された実行可能コードロジックです。擬似コードとは異なり、アルゴリズムを書く人は、タスクを実行し、操作し、暗号化し、抽出するために、開発者ではなくコンピュータによって解釈されるため、プログラミング知識が必要です。アルゴリズムは、コードロジックで定義されているように、コンピュータプログラムに基本的にタスクを実行するよう指示する。どのプログラミング構文のエラーでも、プログラミング知識が必要なこれらのタスクが正常に実行されなくなります。

計画段階で擬似コードを書くときは、アルゴリズムが効果的で、焦点を絞って最終的な結果に到達しなければならないことを忘れないでください。ソリューションのすべての側面を常に考慮する必要があります。 アルゴリズムは何をしていますか?基本的には、トリガー、プロセス、または別のアルゴリズムによって実行され、入力としてデータを受け入れます。データは、指示と操作のステップを経て出力を生成します。 データは変数に格納され、実行プロセス中に各変数にアルゴリズムの名前が付けられてデータが割り当てられます。アルゴリズムは、参照および他のアルゴリズムへの呼び出しを含むことができるため、名前も付けられている。使用されているコーディングソフトウェアにかかわらず、アルゴリズムを開発するときには複雑で複雑なことが多く、正確で望ましい結果を得るためには明確に定義する必要があります。 アルゴリズムの設計および実装に関して考慮すべきもう1つの重要な側面は、それがどのくらい速く実行されるかである。これは、より高速なソフトウェアとより高速なデバイスに慣れてきたエンドユーザーにとってますます明白になっています。 たとえば、検索条件にフィルタを適用し、結果が表示されるまでに非常に長い時間待つことは、忘れられない経験になります。開発者は、データの受信方法と時期、サブプロセスなどでデータをフィルタリングできるかどうかなどを調査します。 プロセスを遅くするコードロジックは、ユーザー、開発者、およびビジネスに悪影響を及ぼします。要約すると、擬似コードは、コードロジックを計画し、堅牢なソリューションを実装するための重要な物語です。これらのソリューションは、正確で望ましい結果を生み出す構造化された高速で効果的なアルゴリズムを使用して実装されています。