我想生成数字 2 5次,数字 1 10次。我试图随机地在Delphi中的String Grid中传播它们。我还希望用 0 来填充 1 或 2 的其余网格。我不知道如何从这里开始。
它看起来像这样(P代表玩家,只有5 2' s和10 1')https://gyazo.com/aeef05c3a92ce7847c0f42ad40faa733
答案 0 :(得分:3)
给定尺寸 m × n 的网格,创建一个长度为m * n
的数组。将5个2和10 1放入数组中,并用0填充其余部分。 (我们假设 m 和 n 的乘积至少为15.)随机播放数组。将混洗数组的每个元素复制到网格中的连续单元格中。
答案 1 :(得分:0)
虽然Robs回答中所说的方法可以完成这项工作,但我个人认为这样做会使其复杂化。
那么什么会更简单的方法?
你的目标是将这些数字放在网格中的随机位置。
如何确定网格中某个对象的位置?你可以通过X(列)和Y(行)坐标来完成它。
那么如何在网格中获得随机位置? Simple为X和Y坐标选择了两个随机值。
至于放置一定数量的数字1和数字2使用两个简单的循环。