• Showing Page History #50325

Show page source of 制御構造 #50326

= 制御構造
 * MK SCriptの制御構造は、条件分岐、繰り返し、引数付ノードの3種類が存在します。
 * さらに、繰り返しは前置条件型と後置条件型の2つから成り立ちます。

== 条件分岐
 * 条件式として記載された内容が真の場合、内部ブロックの処理を実行し、条件分岐構造全体の評価を終了します。
 * 条件式が偽の場合、次の条件式の評価に移ります。
 * すべての条件式が偽の場合、else 節が存在すれば、else節内部ブロックの処理を実行し、条件分岐構造全体の評価を終了します。
 * else節が存在しない場合は、その時点で条件分岐構造全体の評価を終了します。
 * 表記法
{{{
if <条件式> then
  内部ブロック
[
elseif <条件式> then
  内部ブロック
]*             # 0 回以上記載
[
else
  内部ブロック
]?             # 0もしくは1回記載
end
}}}
 * 例
{{{
if x == 10 then
  Console << "x == " << x << "\n"
elseif x < 10 then
  Console << "x < " << 10 << "\n"
else
  Console << "x > " << 10 << "\n"
end  
}}} 

== 繰り返し
 * 繰り返しは、条件式が真の間、内部ブロックが繰り返し実行されます。
 * 前置条件型は、最初に条件評価を行い、条件式が真であった場合のみ、内部ブロックを実行します。
 * 後置条件型は、内部ブロックを一度実行したのち、最初の条件式評価を行います。
 * 表記法
{{{
# 前置条件型
while <条件式>
  内部ブロック
end

# 後置条件型
do
  内部ブロック
end while 条件式
}}}
 * 例
{{{
# 前置条件型
while x != 10
  x = x + 1
end

# 後置条件型
do
  x = x + 1
end while x != 10
}}}
''''''
== 引数付ノード