【发布时间】:2018-08-13 20:27:34
【问题描述】:
如何从 12 种颜色的数组中选择 4 种随机颜色,然后存储选择的 4 种颜色,以便游戏可以告诉用户在记忆游戏中找到 4 种颜色中的 1 种。
例如如果数组列表中有R,G,B,Y,P,O颜色
然后游戏选择 R,Y,B,O 并显示它们
玩家需要找到的颜色不能是绿色,例如只能是随机选择的4种颜色。
我真的很难解决这个问题,任何帮助都会很棒
【问题讨论】:
如何从 12 种颜色的数组中选择 4 种随机颜色,然后存储选择的 4 种颜色,以便游戏可以告诉用户在记忆游戏中找到 4 种颜色中的 1 种。
例如如果数组列表中有R,G,B,Y,P,O颜色
然后游戏选择 R,Y,B,O 并显示它们
玩家需要找到的颜色不能是绿色,例如只能是随机选择的4种颜色。
我真的很难解决这个问题,任何帮助都会很棒
【问题讨论】:
这是许多可能的方法之一:
allColors = {"black", "white", "red", "orange", "yellow", "green",
"blue", "indigo", "violet", "gold", "silver", "bronze"}
chosenColors = {}
while #chosenColors < 4 do
n = math.random(1, #allColors)
table.insert(chosenColors, allColors[n])
table.remove(allColors, n)
end
然后:
for k, v in pairs(chosenColors) do
print(k, v)
end
这将打印,例如:
1 white
2 indigo
3 red
4 gold
【讨论】:
chosenColors 表中出现多次。一旦第一次被选中,table.remove 调用将从allColors 表中删除该颜色。