Lolcode-statements-and-flow-control

提供:Dev Guides
移動先:案内検索

Lolcode-ステートメントとフロー制御

LOLCODEを使用すると、さまざまなステートメントを通じてプログラムのフローを制御できます。 この章では、LOLCODEで使用可能なさまざまなタイプのステートメントについて説明します。

式ステートメント

割り当てのない式、つまり 単に数学演算または関数を呼び出すことは、LOLCODEの正当なステートメントです。 式が評価されると、その最終値は一時変数ITに配置されます。 ITの値はローカルスコープに残り、次回式で置き換えられるまで存在します。

割り当てステートメント

割り当てステートメントは、式の出力を特定の変数に割り当てるために使用されます。 彼らは一般的に形式です-

<any_variable> <assignment operator> <any expression>

式に変数を使用することはできますが、割り当てられる前であっても注意してください。

条件付きステートメント

If-Thenステートメント

if-thenステートメントは、IT変数を操作する非常に簡単な操作です。 CやJavaなどの他のプログラミング言語のif–elseステートメントに似ています。

if–thenステートメントを適用する4つのキーワードがあります。

  • O RLY?
  • YA RLY
  • ノーワイ
  • OIC

一般的な形式は-

<any_expression>
O RLY?
   YA RLY
      <code to execute if above condition is true>
   NO WAI
      <code to execute in this block>
OIC

上記のすべてのステートメントは、次のようなコンマで区切られた同じ行に記述できます-

 BOTH SAEM NAMES AN "Name", O RLY?
   YA RLY, VISIBLE "My name is ABCD"
   NO WAI, VISIBLE "Your name is ABCD"
 OIC

if-thenステートメントの使用中に、YA RLYブロックとNO WAIブロックの間でオプションのMEBBE <any expression>を使用できます。

MEBBEに続く<any expression>がTrue(WIN)の場合、そのブロックが実行されます。 それ以外の場合、その式が偽であれば、ブロックは次のMEBBE、NO WAI、またはOICステートメントまでスキップされます。

<any expression>
O RLY?
   YA RLY
      <code to be executed if true>
   MEBBE <expression>
      <code to be executed mebbe is true>
   MEBBE <expression>
      <code to be executed mebbe is true>
   NO WAI
      <code to be executed if above are false>
OIC

BOTH SAEM NAMES AN "NAME"
O RLY?
   YA RLY, VISIBLE "YOUR NAME IS ABCD"
   MEBBE BOTH SAEM ANIMAL AN "OUR NAME IS ABCD"
   VISIBLE "NO ABCD"
OIC

ケースステートメント

LOLCODEでは、キーワード「WTF?」は他の多くの言語のスイッチに似ています。 キーワードWTF? 比較のために式の値としてITを使用します。 WTFを使用するには、式ではなくリテラルである比較ブロックがOMGによって開かれます。

他の言語の場合と同様に、各リテラルは一意でなければならないことに注意してください。

OMGブロックはGTFOステートメントで終了する必要があります。 OMGブロックがGTFOによって終了されていない場合、GTFOに到達するまで次のOMGブロックが実行されます。

どのリテラルもtrueと評価されない場合、OMGWTFはデフォルトのケースを示します。

WTF?
   OMG <any value to compare>
      <code block to execute if expression is satisfied>
   OMG <any value to compare>
      <code block to execute if expression is satisfied>
   OMGWTF
      <code block to execute as a default case>
OIC
NAME, WTF?
   OMG "A"
      VISIBLE "ABCD"
   GTFO
   OMG "E"
      VISIBLE "EFGH"
   GTFO
   OMGWTF
      VISIBLE "ZYXW"
   OIC

上記のコードの出力結果は-

"E":

EFGH