Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 688
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Да ну? Правда?
А я всегда думал, что сиё (^) есть возведение в степень.
Попытайтесь скомпилировать этот пример:
//| Test_1.mq5 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link "http://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void OnStart(void)
{
double a=2;
double b=3;
double c=a^b;
int g=0;
//---
}
//+------------------------------------------------------------------+
и желание язвить пропадёт само собой.
Возведение в степень.
У меня есть часы поломанные -- они два раза в день гарантированно показывают очень точное время.
Возведение в степень https://www.mql5.com/ru/docs/math/mathpow
Так что, здесь Карпутов прав -- ^ -- это "исключающее ИЛИ"
смотрим список операций https://www.mql5.com/ru/docs/basis/operations/rules
Попытайтесь скомпилировать этот пример:
//| Test_1.mq5 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void OnStart(void)
{
double a=2;
double b=3;
double c=a^b;
int g=0;
//---
}
//+------------------------------------------------------------------+
и желание язвить пропадёт само собой.
и он компилируется? У меня нет...
И вот что Вики вещает:
Знак возведения в степень: ^ (в типографской и рукописной записи формул не применяется; используется в программировании, наряду с более редкими символами ↑ и **, а также в «линейной» текстовой записи формул).
Господа, хорош спорить. Я тоже думаю, что этот знак по крайней мере в 4-рке был возведением в степень.
Лучше скажите почему это:
не работает при отключенном подключении к Интернет?
Попытайтесь скомпилировать этот пример:
//| Test_1.mq5 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link "http://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void OnStart(void)
{
double a=2;
double b=3;
double c=a^b;
int g=0;
//---
}
//+------------------------------------------------------------------+
и желание язвить пропадёт само собой.
Я не поддался на шутку-провокацию, т.к. сразу увидел ошибку )
А вы, Карпутов, хитрец-молодец, оказывается.
Научились обучать новичков неявно, мол, "попытайся скомпилировать" и разберёшься с вопросом глубже.
У меня есть часы поломанные -- они два раза в день гарантированно показывают очень точное время.
Возведение в степень https://www.mql5.com/ru/docs/math/mathpow
Так что, здесь Карпутов прав -- ^ -- это "исключающее ИЛИ"
смотрим список операций https://www.mql5.com/ru/docs/basis/operations/rules
А если человек привёл формулу не из mql ?
Если он просто взял её где-то в иных источниках?
Обычно так обозначают возведение в степень.
Конечно его пример (если его без ошибок написать) показывает, что этот знак именно в коде mql НЕ является возведением в степень (pow()), но тут нужно уточнять что имел в виду вопрошающий. А судя по его формуле GHPR=(BalanceClose/BalanceOpen)^(1/N), он НЕ имел в виду синтаксис mql, так как в ней явно прослеживаются значения double, а не char, кои нужны для побитовых операций.
Я не поддался на провокацию, т.к. сразу увидел ошибку.
char a='a', b='b';
//--- операция исключающее ИЛИ
char c=a^b;
Print("a = ",a," b = ",b);
Print("a ^ b = ",c);
// Результат будет такой:
// a = 97 b = 98
// a ^ b = 3
Побитовые операции выполняются только сцелыми числами.
Я не поддался на шутку-провокацию, т.к. сразу увидел ошибку )
А вы, Карпутов, хитрец, оказывается.
Научились обучать новичков неявно, мол, "попытайся скомпилировать" и разберёшься с вопросом глубже.
Это ты меня новичком назвал? Спасибо - хорошо сохранился оказывается...
Так мне интересно, а сам тов.Карпутов смог скомпилировать свой код...
Это ты меня новичком назвал. Спасибо - хорошо сохранился оказывается...
Так мне интересно, а сам тов.Карпутов смог скомпилировать свой код...
Артём, есть же мудрость народная: "Век живи, век учись".
И Сократ говорил: "Я знаю, что ничего не знаю".
Насчёт что "смог Карпутов" -- я не в курсе.