【发布时间】:2019-10-06 14:44:34
【问题描述】:
我需要生成一个 1000 个随机数作为 [x,y] 坐标。最高的 x 值为 76,而 y 为 15。我还制作了一个 Point 2D 类,它应该读取 X 和 Y 坐标并做一些数学方程式(该类称为 Punkt2D,它使用 X 和 Y 类距离.X 和 distance.Y 来计算)。
目前我只能得到 0 到 75 之间的 1000 个随机数。如何将其转换为坐标值?
(kolonner 表示列,rader mens rows 和 nummer mens number)。
public const int MaxX = 76;
public const int MaxY = 15;
public const int min = 0;
public const int rader = 1000;
public const int kolonner = 2;
public static void Main(string[] args)
{
Random r = new Random();
int[,] nummer = new int[kolonner,rader];
for (int m = 0; m < kolonner; m++)
{
for (int n = 0; n < 1000; n++)
{
nummer[m,n] = r.Next(0,MaxX);
Console.WriteLine(Convert.ToString(nummer[m, n]));
}
}
}
我也确实从这里开始使用这种方法,在那里我删除了循环。
int row = r.Next(nummer.GetLength(0));
int column = r.Next(nummer.GetLength(1));
int randomNummer = nummer[row, column];
Console.WriteLine(Convert.ToString(nummer));
提前致谢。
【问题讨论】:
-
“转成坐标值”是什么意思?您的坐标值是否有小数位,或者您只是希望它能够选择负数?
-
int[,] 是错误的数据类型,您需要一个元组
并使用 new tuople -
List<Point>也可以。
标签: c# loops vector random coordinates