2

私はランダムな単語ジェネレーターを作成していますが、ちょっとした問題が発生しました。closedLetters (c、d、f など) を保持するテーブルから値を出力しようとしていますが、機能していません。ゼロを返しています。ヘルプ?

local closedLetters={b, c, d, f, g, h, j, k, l, m, n, p, q, r, s, t, v, w, x, z}
local openLetters={a, e, i, o, u, y}
print(closedLetters[2])

(そのコードは単なる例であり、私が設定したものは実際にはこのようなものでした)

local closedLetters={b, c, d, f, g, h, j, k, l, m, n, p, q, r, s, t, v, w, x, z}
local openLetters={a, e, i, o, u, y}
print(closedLetters[math.random(#closedLetters)]..openLetters[math.random(#openLetters)])
4

2 に答える 2

5

そのテーブルにはたくさんのキーしかありません。nil 値を持つキー、したがって戻り値。代わりにリテラルにします: closedLetters= {'a', 'b', .....}

于 2013-07-07T21:38:42.387 に答える
2

closedLettersEyeballの答えを補完するために、openLetters実際の文字列を作成するだけです。次に、string.subそれらにアクセスするために使用できます。

local closedLetters = "bcdfghjklmnpqrstvwxz"
local openLetters   = "aeiouy"
local letter1, letter2 = math.random(#closedLetters), math.random(#openLetters)
print(closedLetters:sub(letter1, letter1) .. openLetters:sub(letter2, letter2) )
于 2013-07-07T21:50:39.937 に答える