生成随机数对以形成二维随机点

时间:2013-12-12 01:17:43

标签: c++ c translation

我试图理解一个愚蠢的句子:

“此函数将执行单个实验。它将生成npoints随机有理数对(x,y),to 形式npoints随机2维点。这些点的x和y坐标应保留在间隔中 [-r,r]“

因此,在此函数中,npoints是整数,值为1000,并且可以是不同的值。函数得到数字a和b以及度数thera1和theta2,还有r,即r(θ) = ae^bθ。那么,任何人都可以解释一下,这个功能实际上必须做什么?

PS。它实际上并不是bug,问题是我无法理解它可能是因为我的英语不是那么好,对不起,但它不是因为它的英文网站代码:)

1 个答案:

答案 0 :(得分:1)

我的解释如下:

  

“此功能将执行单个实验。它将生成   npoints随机有理数对(x,y),

您需要生成随机x / y坐标对。 “理性”只是意味着数字可以写成两个整数的商(所以e和PI都出来了)。

  

形成npoints随机2维点。

你最终应该得到“npoints”。

  

这些点的x和y坐标应保留在区间[-r,r]“

因此,您需要将点保持在“r”距离0内。换句话说,没有点的x或y坐标小于-r或大于r。在函数形式中,这看起来像:

/* The point structure */
struct POINT {
   int x;
   int y;
};

/* npoints    -- The number of points to generate */
/* range      -- The maximum (positive/negative) value for the points */
POINT *GetRandomCoordinates(int npoints, int range);

希望有所帮助!