ロゴ-手順

プロシージャは、コマンドのコレクションをカプセル化する方法を提供します。プロシージャを作成すると、組み込みコマンドと同じように使用できます。プロシージャの「意味」は、その個々のコマンドの意味です。

引数のないプロシージャーの最初の行には、「to」(予約語)という単語とプロシージャーの名前があります。(ロゴの予約語は変数として使用できず、明確に定義された意味と使用法があります。)最後の行に予約語「end」があります。

サブプログラムは、別のプログラムが実行するための名前付きの一連のステップです。サブプログラムの他の名前は、プロシージャと関数です。ロゴでは、コンピュータに何かを行う方法を指示します—たとえば-

to square
repeat 4 [fd 100 rt 90]
end

Logoに手順を説明したら、組み込みのものと同じように、コマンドラインでその名前を入力できます。この場合、コマンドラインで「square」と入力すると、Logoはコマンドを検索して正方形を作成します。

と言うボタンをクリックします Edall(すべて編集用)Logoの組み込みエディターを表示します。(ロゴにEdallボタンがない場合は、コマンドラインで「edall」と入力します)。次のコードブロックには、サブプログラムの必要な構造があります。

to procedurename
steps of your procedure here
end

プロシージャまたはサブプログラムは、「to」という単語で始まり、その後に私たちが考える名前が続く必要があります。次のステップは、コマンドラインで記述するのと同じステップをすべてキー入力することです。プロシージャは「end」という単語で終了する必要があります。すべてのコメントまたはコメント行の前には、セミコロン(;)を付ける必要があります。

以下は、上記の例の実際的なデモンストレーションです。

ここで、コマンドラインから、以下に示すように、「square」という名前を使用してプロシージャを実行します。

プロシージャには、組み込みコマンドを含めることができるだけでなく、他のプロシージャを含めることもできます。

次の例では、プロシージャ 'flower'がその本体から事前定義されたプロシージャ 'square'を呼び出しています。

次のスクリーンショットは、プロシージャ「flower」が呼び出されたときの出力を示しています-

すべての正方形が同じサイズである必要はありません—多様性が必要です。Logoでは、変数を作成し、その値を変更できます。次の例では、少し変更を加えて同じ正方形の手順を使用します。

to square :n
repeat 4 [fd :n rt 90]
end

以下に示すように、コマンドラインで「:n」の代わりにLogoに値を指定します。

square 50
square 75
square 100

これが上記の例の実際的なデモンストレーションです-

次に、2つの引数をプロシージャに渡す方法について説明します。次のスクリーンショットは、同じものの実際的なデモンストレーションです。