Random
Hàm tĩnh. Tạo và trả về một ma trận hoặc vector mới được điền đầy bằng các giá trị ngẫu nhiên. Các giá trị ngẫu nhiên được tạo ra đồng đều trong phạm vi được chỉ định.
cpp
static vector vector::Random(
const ulong size, // độ dài vector
const double min=0.0, // giá trị tối thiểu
const double max=1.0 // giá trị tối đa
);
static matrix matrix::Random(
const ulong rows, // số hàng
const ulong cols, // số cột
const float min=0.0, // giá trị tối thiểu
const float max=1.0 // giá trị tối đa
);
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
Hàm này điền vào một ma trận hoặc vector hiện có với các giá trị ngẫu nhiên. Các giá trị ngẫu nhiên được tạo ra đồng đều trong phạm vi được chỉ định.
cpp
void vector::Random(
const double min=0.0, // giá trị tối thiểu
const double max=1.0 // giá trị tối đa
);
void matrix::Random(
const float min=0.0, // giá trị tối thiểu
const float max=1.0 // giá trị tối đa
);
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
Tham số
rows
[in] Số hàng.
cols
[in] Số cột.
size
[in] Độ dài vector.
min=0.0
[in] Giá trị tối thiểu trong mẫu số ngẫu nhiên được tạo ra.
max=1.0
[in] Giá trị tối thiểu trong mẫu số ngẫu nhiên được tạo ra.
Giá trị trả về
Trả về một ma trận mới với số hàng và cột được chỉ định, được điền đầy bằng các giá trị ngẫu nhiên.
Ví dụ
cpp
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
vector v1= vector::Random(6,0,4);
Print("vector v1 \n", v1);
/*
vector v1
[3.340834286841758,0.9073984578501895,3.15598511117417,0.7106475841045956,2.294010032502471,0.2469535936245121]
*/
vector v2(4);
v2.Random(-3,3);
Print("vector v2 \n", v2);
/*
vector v2
[-2.642032080246609,1.008521607147651,1.340623848219547,-2.789016363161853]
*/
matrix m1 = matrix::Random(5, 5, -1, 3);
Print("matrix m1 \n", m1);
/*
matrix m1
[[1.468433369525809,1.199383023707052,0.6154667729547869,2.830012157519816,-0.06995551732134897]
[2.638591175814763,2.966658948912904,2.001837257994767,-0.08570802469870731,0.8260628995080626]
[0.982665140643405,0.5825661973987162,-0.6615881071569371,0.4069533109215444,-0.1612716566681097]
[-0.5791836119208447,-0.9332020478167575,2.801898707589577,-0.09887318478405316,-0.3206291206461911]
[-0.1069569017521471,-0.04576879345014895,0.6320100840255642,-0.3805729270401813,0.7021634554728315]]
*/
matrix m2(3, 3);
m2.Random(-2, 2);
Print("matrix m2 \n", m2);
/*
matrix m2
[[-1.928191291151613,-1.222873445419332,-1.965333905062949]
[-1.077723600686929,1.053317863273741,-0.1786824246353196]
[-1.965241401448204,1.620956906029246,-1.696386492740453]]
*/
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41