Erreurs, bugs, questions - page 3130

 
Alexey Viktorov #:

Je ne comprends pas du tout ce code.

Que signifie le & mis en évidence dans ce code ? Et dans quelle boucle faut-il exécuter if(h_plus) ? Il ne vous manque pas d'équerres courbes ?

 bool h_plus=true; //false?
   for(int increment=1; increment<=n; increment++)
      h_plus&=high[i]>high[i+increment];
   if(h_plus) {...}
   ...


 
x572intraday #:

En fait, je suis tombé sur cette fonctionnalité par hasard. Ce n'est pas ce que je voulais...

ou

L'ennui, c'est que n peut être assez grand, et j'ai donc voulu résumer cette longue chaîne de conditions en une formule compacte. J'ai essayé de cette façon :

mais ça s'est avéré être un peu le bordel. Au moins parce que h_plus, avec cet algorithme, devra prendre la somme totale des conditions vérifiées, y compris la condition avec vérification redondante du tableau d'indices, ce qui ne se produisait pas dans le premier if déballé, sans for. Et d'autres vernis gâchent le tableau.

Cela vaut-il la peine d'être envisagé ? Est-il possible d'y déroger ?

Quelque chose comme ça :

for(int i=start; i<rates_total-3 && !IsStopped(); i++)
{
   bool h_plus=true; //false?
   for(int increment=1; increment<=n; increment++)
     {
      h_plus&=high[i]>high[i+increment];
      if(!h_plus)break;
     }
   if(h_plus) {...}
   ...
}
 
Lilita Bogachkova #:


Opération ET par bit des représentations binaires de y et x y &= x ;

https://www.mql5.com/ru/docs/basis/operations/assign

Документация по MQL5: Основы языка / Операции и выражения / Операции присваивания
Документация по MQL5: Основы языка / Операции и выражения / Операции присваивания
  • www.mql5.com
Операции присваивания - Операции и выражения - Основы языка - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Lilita Bogachkova #:


Quelle ligne de votre snapshot a &=

 
JRandomTrader #:

Opération ET par bit des représentations binaires de y et x y &= x ;

https://www.mql5.com/ru/docs/basis/operations/assign

Je vois. Ce n'est pas pour les bricoleurs... J'étais trop paresseux pour regarder là...
 
Alexey Viktorov #:

Je ne comprends pas du tout ce code.

Que signifie le & mis en évidence dans ce code ?

Je ne peux répondre que pour &= immédiatement :

Guide de référence MQL5 / Notions de base du langage / Opérations et expressions / Opérations d'assignation :

Opération binaire ET des représentations binaires de y et x y &= x;

similaire à la variable cumulative y :

Augmenter la valeur de la variable y de x y += x;


Mais c'est ma première expérience de l'utilisation de &=, je peux donc me tromper.

Et dans quelle boucle le if(h_plus) doit-il être exécuté ? Les supports courbes vous ont-ils échappé ?

Non. D'abord (à dessein), toutes les conditions logiques sont additionnées dans l'accumulateur h_plus inside for, et la somme bool résultante est substituée dans le if, qui n'a rien à voir avec le for interne.
 
Alexey Viktorov #:

Quelle ligne de votre image a &=

https://stackoverflow.com/questions/33304407/c-meaning-and

C++ meaning |= and &=
C++ meaning |= and &=
  • 2015.10.23
  • Sven van den Boogaart
  • stackoverflow.com
I have a part of code that contains the following functions: I know what a switch case is but I don't understand what these parts do. is an int. The 's also refer to an int value. Could someone explain what these parts do? An example with input values and results would be nice.
 
Lilita Bogachkova #:

Tu penses trop à moi... Je n'ai jamais appris cette langue ennemie... alors c'est arrivé... et maintenant c'est trop tard.

 
JRandomTrader #:

Quelque chose comme ça :

J'ai déjà essayé de faire une pause et même de revenir dans le feu de l'action, mais ça n'a fait qu'empirer les choses. Je vais essayer de simplifier un peu plus le code et repenser à la pause...

 
x572intraday #:

Je ne peux répondre que pour &= immédiatement :

Guide de référence MQL5 / Notions de base du langage / Opérations et expressions / Opérations d'affectation :

Par analogie avec la variable cumulative y :


Mais c'est ma première expérience avec &=, je peux donc me tromper.

Tout d'abord, toutes les conditions logiques sont additionnées dans l'accumulateur h_plus à l'intérieur de for et la somme bool résultante est insérée dans if qui n'a rien à voir avec for interne.
Mais quand même, il serait plus correct de ne pas dire
h_plus&=high[i]>high[i+increment];
mais
h_plus = h_plus && high[i]>high[i+increment];