Lua講座受講!

Lua講座受講! - Atelier de Muguet 制作記録では楽しんでらっしゃる方もいるようですが、私は人を面白がらせるってのが苦手でして。普通にやってみます。

例題1

変数と関数 - senzogawaのNな日々より。

    -- 以下でOKが表示されるよう、関数funcを定義してみること。
    str, num = func("", 1)
    if str == "関数" and num == 3 then NSOkBox("OK!", "") end
    str, num = func("変数と", 123)
    if str == "変数と関数" and num == 369 then NSOkBox("OK!", "") end

例題1の回答

function func(str, num)
if type(str) ~= "string" then NSOkBox("funcの第一引数には文字列を指定してください。", "エラー!"); NSEnd() end
if type(num) ~= "number" then NSOkBox("funcの第二引数には数値を指定してください。", "エラー!"); NSEnd() end
return str.."関数", num*3
end

例題2

ブロックとスコープ - senzogawaのNな日々より。

以下でOKが表示されるよう、「local」、「do」、「end」をそれぞれ一つずつ挿入してみること。空白・改行は無制限に追加していい。

var = "OK"
var = "NG"
NSOkBox(var, "")

例題2の回答

var = "OK"
do
local var = "NG"
end
NSOkBox(var, "")

振り返って

でも例題1ももうちょっとやり方がありそうなもんだけどなあ。