错误、漏洞、问题 - 页 2493 1...248624872488248924902491249224932494249524962497249824992500...3184 新评论 A100 2019.07.02 17:05 #24921 Сергей Таболин: 在哪里挖? 需要等待--隔间很忙(联系时未计算数据)。 Vladimir Karputov 2019.07.03 07:04 #24922 与本主题无关的评论已被移至"来自MQL5 MT5 MetaTrader 5初学者的问题"。 Vladimir Karputov 2019.07.03 07:25 #24923 与本主题无关的评论已被移至"来自MQL5 MT5 MetaTrader 5初学者的问题"。 [删除] 2019.07.03 17:06 #24924 捕捉到一个错误 ...tested with error "critical runtime error 502 in OnTester function (array out of range, module ....ex5, file ....mqh, line 237, col 51... 下面是代码本身。 //+------------------- // коррекция int correcton_index[3]; correcton_index[0] = 1; correcton_index[1] = (int)MathRound(balance_arr_size / 2); correcton_index[2] = balance_arr_size; int correcton_index3[5]; correcton_index3[0] = 1; correcton_index3[1] = (int)MathRound(correcton_index[1] / 2); correcton_index3[2] = correcton_index[1]; correcton_index3[3] = (int)MathRound((balance_arr_size - correcton_index[1]) / 2); correcton_index3[4] = balance_arr_size; int correcton_index7[9]; correcton_index7[0] = 1; correcton_index7[1] = (int)MathRound(correcton_index3[1] / 2); correcton_index7[2] = correcton_index3[1]; correcton_index7[3] = (int)MathRound((correcton_index3[2] - correcton_index3[1]) / 2); correcton_index7[4] = correcton_index3[2]; correcton_index7[5] = (int)MathRound((correcton_index3[3] - correcton_index3[2]) / 2); correcton_index7[6] = correcton_index3[3]; correcton_index7[7] = (int)MathRound((balance_arr_size - correcton_index3[3]) / 2); correcton_index7[8] = balance_arr_size; double correcton = NormalizeDouble((balance_arr[correcton_index[2]-1] / balance_arr[correcton_index[1]-1]) / (balance_arr[correcton_index[1]-1] / balance_arr[correcton_index[0]-1]),8); double correcton3[3]; double correcton7[7]; double crr = 1; ArrayInitialize(correcton3,EMPTY_VALUE); ArrayInitialize(correcton7,EMPTY_VALUE); for(int i = 0; i < 3; i++) { correcton3[i] = NormalizeDouble((balance_arr[correcton_index3[i+2]-1] / balance_arr[correcton_index3[i+1]-1]) / (balance_arr[correcton_index3[i+1]-1] / balance_arr[correcton_index3[i+0]-1]),8); crr = NormalizeDouble(crr * correcton3[i],8); } correcton = NormalizeDouble(correcton * crr,8); crr = 1; for(int i = 0; i < 7; i++) { correcton7[i] = NormalizeDouble((balance_arr[correcton_index7[i+2]-1] / balance_arr[correcton_index7[i+1]-1]) / (balance_arr[correcton_index7[i+1]-1] / balance_arr[correcton_index7[i+0]-1]),8); crr = NormalizeDouble(crr * correcton7[i],8); } correcton = NormalizeDouble(correcton * crr,8); 当i=6时,correcton_index7[i+2](i+2=8)不能很好地超出数组的限制。更重要的是,之前的循环 没有产生同样的 错误。我错过了什么? Roman 2019.07.03 17:36 #24925 Сергей Таболин: 捕捉到一个错误 下面是代码本身。 当i=6时,correcton_index7[i+2](i+2=8)不能很好地超出数组的限制。更重要的是,之前的循环 没有产生同样的 错误。我错过了什么? 在correcton3[3] 中;你指定了三个项目。,并且循环被调用了四次。 在correcton7[7];中,你指定了7个元素。,并循环运行8次。 [删除] 2019.07.03 18:22 #24926 Roman: 在correcton3[3] 中;你指定三个元素。 而你的循环运行了四次。 在correcton7[7 ]中 ;你指定了七个元素。 而你执行了八次循环。 让我们掰着手指头数一数:i=0,每循环一次就递增1。在i<7之前一直有效。你的问题是(掰着手指头数),这个循环将被执行多少次? Roman 2019.07.03 18:46 #24927 是的,对不起,我没有看到条件中没有循环 = 这里不可能有问题? correcton_index[0] = 1; correcton_index3[0] = 1; correcton_index7[0] = 1; 你指定了零个元素,并在那里分配一个值。 [删除] 2019.07.03 18:55 #24928 Roman: 是的,对不起,没有看到,在周期的条件不= 这里不可能有问题? 你指定了零个元素,并在那里分配一个值。 谢谢你愿意帮忙,但要从自己整理数组开始。))) Roman 2019.07.03 18:58 #24929 Сергей Таболин: 谢谢你愿意帮忙,但要从自己整理数组开始。))) 数组声明和数组元素 的迭代是不同的 ))) [删除] 2019.07.03 19:13 #24930 Roman: 数组声明和数组元素 的迭代是不同的)) int correcton_index7[9]; // объявление correcton_index7[0] = 1; // присвоение значения correcton_index7[1] = (int)MathRound(correcton_index3[1] / 2); 罗曼,在你讲课之前,先学习如何自己做。 1...248624872488248924902491249224932494249524962497249824992500...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
在哪里挖?
需要等待--隔间很忙(联系时未计算数据)。
捕捉到一个错误
...tested with error "critical runtime error 502 in OnTester function (array out of range, module ....ex5, file ....mqh, line 237, col 51...
下面是代码本身。
当i=6时,correcton_index7[i+2](i+2=8)不能很好地超出数组的限制。更重要的是,之前的循环 没有产生同样的 错误。我错过了什么?
捕捉到一个错误
下面是代码本身。
当i=6时,correcton_index7[i+2](i+2=8)不能很好地超出数组的限制。更重要的是,之前的循环 没有产生同样的 错误。我错过了什么?
在correcton3[3] 中;你指定了三个项目。
,并且循环被调用了四次。
在correcton7[7];中,你指定了7个元素。
,并循环运行8次。
在correcton3[3] 中;你指定三个元素。
而你的循环运行了四次。
在correcton7[7 ]中 ;你指定了七个元素。
而你执行了八次循环。
让我们掰着手指头数一数:i=0,每循环一次就递增1。在i<7之前一直有效。你的问题是(掰着手指头数),这个循环将被执行多少次?
这里不可能有问题?
你指定了零个元素,并在那里分配一个值。
是的,对不起,没有看到,在周期的条件不=
这里不可能有问题?
你指定了零个元素,并在那里分配一个值。
谢谢你愿意帮忙,但要从自己整理数组开始。)))
谢谢你愿意帮忙,但要从自己整理数组开始。)))
数组声明和数组元素 的迭代是不同的 )))
数组声明和数组元素 的迭代是不同的))