|
AmiSite.ru
Форум по Ами |
Автор |
Сообщение |
gonzalezz
Зарегистрирован: 26.02.2010
Сообщения: 47
|
Всем привет!
Есть массив данных и массив разделителей. Нужно получить массив содержащий последнее
значение диапазона, но сдвинутое к началу и растянутое на весь диапазон. Как то так:
Код: |
array = данные; //|12321212|34567876|43212345|
segments = разделитель; //|10000000|10000000|10000000|
dataOnClose = Ref(array, - (BarsSince(segments)) - 1); //|XXXXXXXX|22222222|66666666|
result = теперь хочу сдвинуть результат на один сегмент назад; //|22222222|66666666|55555555| |
Всю башку сломал, цикл не годиться, очень медленно. Может кто делел такое?
П.С. диапазоны конечно разной длины могут быть, иначе все просто было бы. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Не очень понял вопрос, но вероятно надо смотреть в сторону функции ValueWhen() |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
gonzalezz
Зарегистрирован: 26.02.2010
Сообщения: 47
|
000 писал(а): |
Не очень понял вопрос, но вероятно надо смотреть в сторону функции ValueWhen() |
Там в комментарии пример того что есть и того что нужно. Для удобства символом "|" отмечены единички разделяющего массива (ну сегменты что ли). Так вот, хочу чтобы последнее значение каждого сегмента было сдвинуто к его началу и растянуто на весь сегмент. Понятно что за один проход не сделать, ну думаю что как то возможно. До сих пор все невозможное удавалось таки реализовать на АФЛ. Покручу ValueWhen, но не ясно что будет условием. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
gonzalezz
Зарегистрирован: 26.02.2010
Сообщения: 47
|
Спасибо за направление ! Гениально просто:
Код: |
result = ValueWhen(segments, data, 0); |
Это слишком просто чтобы допереть самостоятельно |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
| |