随机复数

时间:2010-09-05 08:57:22

标签: c++ random complex-numbers

我需要生成随机复数的算法请帮助我知道如何生成随机数但随机复数让我感到困惑

3 个答案:

答案 0 :(得分:8)

我只需生成两个随机数,一个用于实部,一个用于虚部。

答案 1 :(得分:5)

  1. 生成2个随机数(x,y)(使用环境库中的内置rand / rnd / random类),其中x是实部,y是想象中的部分。

  2. 创建一个复数类(带有一个带有实数和虚数参数的构造函数)

  3. 使用步骤1中的2个随机数创建复数x + i y

答案 2 :(得分:0)

1.生成2个数字向量,一个是real_vector,另一个是imaginary_vector,大小为MAX_SIZE,随机生成不同的种子。

2.Random使用任何分布对vector(real_vector + imaginary_vector)中的数字进行洗牌,让我们使用std :: random_shuffle(均匀分布)。

3.随机生成索引并为MAX_SIZE应用模运算符,并从第一个数组中选择索引,该索引将提供随机数的实部。

4.使用第3步获取随机数的虚部。

5.使用从步骤3和步骤4获得的数字创建复数并存储在容器中。

6.转到第3步,检查是否需要更复杂的数字;如果没有,则打破;