По умолчанию массив индексируется от 0 и по возрастанию
ВОПРОС
При помощи какой функции, или языковой конструкции можно индексировать вышеуказанный массив на 10 значений произвольными целыми значениями и в произвольном порядке? Например, так как ниже. Буду очень признателен , если продемонстрируете этот метод при помощи соответствующего кода.
По умолчанию массив индексируется от 0 и по возрастанию
ВОПРОС
При помощи какой функции, или языковой конструкции можно индексировать вышеуказанный массив на 10 значений произвольными целыми значениями и в произвольном порядке? Например, так как ниже. Буду очень признателен , если продемонстрируете этот метод при помощи соответствующего кода.
По поводу расположения индексов в произвольной последовательности , я понял что это делается при помощи математической функции MathRand()
Вопрос А при помощи какой функции я могу значения индексов , которые есть по умолчанию (0,1,2,3,4,5,6...9) заменить нужными мне значениями индексов , например ( 45,90,119,120,234,336,338,564,607,901). Данная операция мне нужна НЕ для написания индикатора.
По поводу расположения индексов в произвольной последовательности , я понял что это делается при помощи математической функции MathRand()
Вопрос А при помощи какой функции я могу значения индексов , которые есть по умолчанию (0,1,2,3,4,5,6...9) заменить нужными мне значениями индексов , например ( 45,90,119,120,234,336,338,564,607,901). Данная операция мне нужна НЕ для написания индикатора.
Спасибо.
Создать второй буфер - буфер индексов. Заполнить его перемешанными значениями, от 0 до размер_буфера - вот и индексы)
..или просто брать случайное число и по нему получать значение буфера.
Создать второй буфер - буфер индексов. Заполнить его перемешанными значениями, от 0 до размер_буфера - вот и индексы)
..или просто брать случайное число и по нему получать значение буфера.
Спасибо за помощь.
Вот простой код
double MaX[10];
int a;
voidOnTick()
{
if (Minute()!=Min)
{
if (a==9)
{
a=0;
}
a++;
MaX[a]=Bid;
Min=Minute();
}
}
Через 10 минут массив будет заполнен значениями цены с индексами от 0 до 9. Если Вам не сложно, внесите изменения в код что бы массив был заполнен теми же значениями, но индексы у этого массива были в следующей последовательности 45,90,119,120,234,336,338,564,607,901
Перемешивать значения индексов пока не нужно. Спасибо за помощь.
Просто в моих стратегиях нет ни каких индикаторов. Поэтому с буферами я не знаком. Как я понял ,буфер - это элемент индикатора.
Через 10 минут массив будет заполнен значениями цены с индексами от 0 до 9. Если Вам не сложно, внесите изменения в код что бы массив был заполнен теми же значениями, но индексы у этого массива были в следующей последовательности 45,90,119,120,234,336,338,564,607,901
Перемешивать значения индексов пока не нужно. Спасибо за помощь.
Просто в моих стратегиях нет ни каких индикаторов. Поэтому с буферами я не знаком. Как я понял ,буфер - это элемент индикатора.
Valeriy Yastremskiy: Индекс 901 это значит в массиве 902 элемента.
Mass[45]=Max[0].....Mass[901]=Max[9]
Нет ... в массиве 10 элементов. И эти 10 индексов этих 10 элементов нужно обозначить этими значениями в этой последовательности (0)45, (1) 90, (2) 119, (3) 120, (4) 234, (5) 336, (6) 338, (7) 564, (8) 607, (9) 901
В скобках - прежние значения индексов. И на их место нужно поставить новые значения без скобок.
То есть любое количество элементов массива могу я проиндексировать произвольной последовательностью чисел , а не в порядке 0,1,2,3,4........100
Переменные должны быть объявлены перед их использованием. Для идентификации переменных используются уникальные имена. Описания переменных используются для их определения и объявления типов. Описание не является оператором. Индексом массива может быть только целое число. Допускаются не более чем четырехмерные массивы. Нумерация элементов массива...
Нет ... в массиве 10 элементов. И эти 10 индексов этих 10 элементов нужно обозначить этими значениями в этой последовательности (0)45, (1) 90, (2) 119, (3) 120, (4) 234, (5) 336, (6) 338, (7) 564, (8) 607, (9) 901
В скобках - прежние значения индексов. И на их место нужно поставить новые значения без скобок.
То есть любое количество элементов массива могу я проиндексировать произвольной последовательностью чисел , а не в порядке 0,1,2,3,4........100
И́ндекс(лат.index — список, реестр, указатель, а также указательный палец) — число, буквы или другая комбинация символов, указывающая место элемента в массиве.
Индекс 45 указывает на 45-ый элемент списка, индекс 90 - на 90-ый элемент.
Нет ... в массиве 10 элементов. И эти 10 индексов этих 10 элементов нужно обозначить этими значениями в этой последовательности (0)45, (1) 90, (2) 119, (3) 120, (4) 234, (5) 336, (6) 338, (7) 564, (8) 607, (9) 901
В скобках - прежние значения индексов. И на их место нужно поставить новые значения без скобок.
То есть любое количество элементов массива могу я проиндексировать произвольной последовательностью чисел , а не в порядке 0,1,2,3,4........100
Что то не понял, индекс массива это индекс от 0 до N. А то что Вы хотите больше похоже на словарь с хешами. Как это делать в массиве не знаю и думаю что это нельзя сделать в обычном массиве. Есть библа Дженерик классов со словарями в МТ. Должно помочь.
Всем доброго времени суток! У меня вопрос по MQL4
По умолчанию массив индексируется от 0 и по возрастанию
ВОПРОС
При помощи какой функции, или языковой конструкции можно индексировать вышеуказанный массив на 10 значений произвольными целыми значениями и в произвольном порядке? Например, так как ниже. Буду очень признателен , если продемонстрируете этот метод при помощи соответствующего кода.

Спасибо.
Всем доброго времени суток! У меня вопрос по MQL4
По умолчанию массив индексируется от 0 и по возрастанию
ВОПРОС
При помощи какой функции, или языковой конструкции можно индексировать вышеуказанный массив на 10 значений произвольными целыми значениями и в произвольном порядке? Например, так как ниже. Буду очень признателен , если продемонстрируете этот метод при помощи соответствующего кода.
Спасибо.
перемешать случайно, буфер или индексы (MathRand)
В индикаторе в структуре алерт. 5 строка снизу Alert(b);
Cудя по всему это количество миллисекунд, прошедших со старта системы)
перемешать случайно, буфер или индексы (MathRand)
По поводу расположения индексов в произвольной последовательности , я понял что это делается при помощи математической функции MathRand()
Вопрос А при помощи какой функции я могу значения индексов , которые есть по умолчанию (0,1,2,3,4,5,6...9) заменить нужными мне значениями индексов , например ( 45,90,119,120,234,336,338,564,607,901). Данная операция мне нужна НЕ для написания индикатора.
Спасибо.
По поводу расположения индексов в произвольной последовательности , я понял что это делается при помощи математической функции MathRand()
Вопрос А при помощи какой функции я могу значения индексов , которые есть по умолчанию (0,1,2,3,4,5,6...9) заменить нужными мне значениями индексов , например ( 45,90,119,120,234,336,338,564,607,901). Данная операция мне нужна НЕ для написания индикатора.
Спасибо.
Создать второй буфер - буфер индексов.
..или просто брать случайное число и по нему получать значение буфера.Заполнить его перемешанными значениями, от 0 до размер_буфера - вот и индексы)
Создать второй буфер - буфер индексов.
..или просто брать случайное число и по нему получать значение буфера.Заполнить его перемешанными значениями, от 0 до размер_буфера - вот и индексы)
Спасибо за помощь.
Вот простой код
Через 10 минут массив будет заполнен значениями цены с индексами от 0 до 9.
Если Вам не сложно, внесите изменения в код что бы массив был заполнен теми же значениями, но индексы у этого массива были в следующей последовательности 45,90,119,120,234,336,338,564,607,901
Перемешивать значения индексов пока не нужно.
Спасибо за помощь.
Просто в моих стратегиях нет ни каких индикаторов. Поэтому с буферами я не знаком. Как я понял ,буфер - это элемент индикатора.
Спасибо за помощь.
Вот простой код
Через 10 минут массив будет заполнен значениями цены с индексами от 0 до 9.
Если Вам не сложно, внесите изменения в код что бы массив был заполнен теми же значениями, но индексы у этого массива были в следующей последовательности 45,90,119,120,234,336,338,564,607,901
Перемешивать значения индексов пока не нужно.
Спасибо за помощь.
Просто в моих стратегиях нет ни каких индикаторов. Поэтому с буферами я не знаком. Как я понял ,буфер - это элемент индикатора.
Индекс 901 это значит в массиве 902 элемента.
Нет ... в массиве 10 элементов. И эти 10 индексов этих 10 элементов нужно обозначить этими значениями в этой последовательности (0)45, (1) 90, (2) 119, (3) 120, (4) 234, (5) 336, (6) 338, (7) 564, (8) 607, (9) 901
В скобках - прежние значения индексов. И на их место нужно поставить новые значения без скобок.
То есть любое количество элементов массива могу я проиндексировать произвольной последовательностью чисел , а не в порядке 0,1,2,3,4........100
Нет ... в массиве 10 элементов. И эти 10 индексов этих 10 элементов нужно обозначить этими значениями в этой последовательности (0)45, (1) 90, (2) 119, (3) 120, (4) 234, (5) 336, (6) 338, (7) 564, (8) 607, (9) 901
В скобках - прежние значения индексов. И на их место нужно поставить новые значения без скобок.
То есть любое количество элементов массива могу я проиндексировать произвольной последовательностью чисел , а не в порядке 0,1,2,3,4........100
И́ндекс (лат. index — список, реестр, указатель, а также указательный палец) — число, буквы или другая комбинация символов, указывающая место элемента в массиве.
Индекс 45 указывает на 45-ый элемент списка, индекс 90 - на 90-ый элемент.
Нет ... в массиве 10 элементов. И эти 10 индексов этих 10 элементов нужно обозначить этими значениями в этой последовательности (0)45, (1) 90, (2) 119, (3) 120, (4) 234, (5) 336, (6) 338, (7) 564, (8) 607, (9) 901
В скобках - прежние значения индексов. И на их место нужно поставить новые значения без скобок.
То есть любое количество элементов массива могу я проиндексировать произвольной последовательностью чисел , а не в порядке 0,1,2,3,4........100
Что то не понял, индекс массива это индекс от 0 до N. А то что Вы хотите больше похоже на словарь с хешами. Как это делать в массиве не знаю и думаю что это нельзя сделать в обычном массиве. Есть библа Дженерик классов со словарями в МТ. Должно помочь.