Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Сервис Фриланс: безопасный способ заказать робота. Попробуй сам!
Andrei
2316
Andrei 2013.11.25 10:33  
Проверка деления на ноль это пережиток вычислительных архитектур и компиляторов прошлого, смысла в этом нет никакого полезного чтобы выбивать из-за это всю программу и тем более следить за этим вручную - логичней было бы присвоить результату максимальное число, или на уровне архитектуры процессора или на уровне компилятора и продолжить работу программы дальше.
burger
20
burger 2013.11.25 10:44  
Andrei01:
Проверка деления на ноль это пережиток вычислительных архитектур и компиляторов прошлого, смысла в этом нет никакого полезного чтобы выбивать из-за это всю программу и тем более следить за этим вручную - логичней было бы присвоить результату максимальное число, или на уровне архитектуры процессора или на уровне компилятора и продолжить работу программы дальше.

Так : ticket=max ;
Mikhail Kozhemyako
1206
Mikhail Kozhemyako 2013.11.25 11:10  
Andrei01:
Проверка деления на ноль это пережиток вычислительных архитектур и компиляторов прошлого, смысла в этом нет никакого полезного чтобы выбивать из-за это всю программу и тем более следить за этим вручную - логичней было бы присвоить результату максимальное число, или на уровне архитектуры процессора или на уровне компилятора и продолжить работу программы дальше.

Да неправда) Какой пережиток. В формуле ясно просматривается возможность деления на ноль.

(MAX (HIGH (i - n)) - CLOSE (i)) / (MAX (HIGH (i - n)) - MIN (LOW (i - n))) * 100

Если хай равно лоу, а такое возможно. Компьютер не может выдать в этом случае бесконечность. Нет у него такого понятия) Да и никто не предлагает следить вручную, следите программно.

Boris
3903
Boris 2013.11.25 11:38  

Вам трудно поставить условие перед формулой?

if(HIGH (i - n) - LOW (i - n) != 0)
X = (HIGH (i - n) - CLOSE (i)) / (HIGH (i - n) - LOW (i - n)) * 100; 

burger
20
burger 2013.11.25 17:58  
Sepulca:

Да неправда) Какой пережиток. В формуле ясно просматривается возможность деления на ноль.

(MAX (HIGH (i - n)) - CLOSE (i)) / (MAX (HIGH (i - n)) - MIN (LOW (i - n))) * 100

Если хай равно лоу, а такое возможно. Компьютер не может выдать в этом случае бесконечность. Нет у него такого понятия) Да и никто не предлагает следить вручную, следите программно.


Правда!У меня проблема решилась таким способом:

Вырезал блок с входными параметрами и вставил в блок start() {.... сохранил и скомпилировал, выдало кучу ошибок по поводу входных параметров extern ...

и одну ошибку, что не объявлена одна константа которая у меня в коде задается во входных параметрах и объявлена в блоке start() {.... которую и удалил отсюда.И все прошло))))).

/ /12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий