Lolcode-関数
関数は、コードを何度も書くための時間と労力を削減するため、プログラミングに役立ちます。適切に記述された関数コードは、高い再利用性を提供します。この章では、LOLCODEで関数を記述および操作する方法について説明します。
関数の定義
関数は、その関数を呼び出すことによって一度に実行されるステートメントのセットです。LOLCODEでは、関数の定義はキーワード「HOW IZ I」で始まり、終了キーワードは「IF USAYSO」です。
LOLCODEで関数を記述するための構文は次のとおりです。
HOW IZ I <function name> [YR <parameter/argument> [AN YR <other _arguments..> …]]
<code block to execute / Set of statements to execute>
IF U SAY SO
重要なポイント
LOLCODE関数を定義するときは、次の重要な点を考慮してください。
LOLCODEでは、関数は特定の固定数の引数のみを入力として受け入れることができます。
引数またはパラメーターは、関数の変数となる識別子です。
LOLCODEの関数は、引数として渡された値以外の値にアクセスできません。
関数からの戻り値
コーディングでのリターンとは、何かが返されることを意味します。プログラミングでは、関数は実行が完了したときにプログラムに何らかの値を返すことができます。LOLCODEでは、関数は以下に説明するようにさまざまな値を返します-
FOUND YR <any_expression> 関数ブロックが完全に実行されたときの式の値を返します。
GTFO 値なし(NOOB)を返します。これは、 return 0 CやJavaなどの他のプログラミング言語で。
他のreturnステートメントが見つからない場合は、 IF U SAY SO が実行され、IT変数の値が返されます。
関数の呼び出し
関数はプログラムの本体で定義され、後で実行のために呼び出されます。与えられた数の引数を受け入れる関数は、以下に示すように呼び出されます-
I IZ <function_name> [YR <expression_One> [AN YR <expression_Two>
[AN YR <expression_Three> ...]]] MKAY
関数を呼び出すとき、式は関数名と、それに続く関数が受け入れる引数の数によって形成されます。これらの引数は、単純な変数または任意の式にすることができます。関数が単純な値ではなく任意の式を受け入れる場合、式の値は関数が呼び出される前に計算されます。
関数が受け入れる引数の数は、関数の定義で定義する必要があることに注意してください。
例
HAI
HOW DUZ I MAINUMBA
I HAS A NUMBA
GIMMEH NUMBA
FOUND YR NUMBA
IF U SAY SO
VISIBLE MAINUMBA
KTHXBYE
上記のコードを実行すると、入力を求められ、入力を送信すると、結果と同じように表示されます。たとえば、55と入力すると、55が出力されます。
例
HAI 1.2
HOW IZ I MULTIPLY YR FIRSTOPERANT AN YR SECONDOPERANT
FOUND YR PRODUKT OF FIRSTOPERANT AN SECONDOPERANT
IF U SAY SO
VISIBLE I IZ MULTIPLY YR 2 AN YR 3
KTHXBYE
入力オペランドの乗算を実行する上記の関数は、実行すると次の出力を出力します-
sh-
4.3$ lci main.lo
6
例
HAI 1.2
I HAS A STRINGARRAY ITZ A BUKKIT
STRINGARRAY HAS A VAR17 ITZ "OBJECT1"
STRINGARRAY HAS A VAR18 ITZ "OBJECT2"
HOW IZ STRINGARRAY ACCESS YR VARIABLE
FOUND YR STRINGARRAY'Z SRS VARIABLE
IF U SAY SO
I HAS A STRING ITZ "VAR17"
VISIBLE STRINGARRAY IZ ACCESS YR STRING MKAY
KTHXBYE
上記のコードが生成する出力は次のとおりです。
sh-
4.3$ lci main.lo
OBJECT1