Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1327

 
Suivi de l'exemple MT4 "STRINGS : ASCII CHARACTERS TABLE AND USE"

//+------------------------------------------------------------------+
//| StringLowerCase |
//+------------------------------------------------------------------+
string StringLowerCase(string str)
  {
   string s = str;
   int lenght = StringLen(str) - 1, symbol;
   while(lenght >= 0)
     {
      symbol = StringGetChar(s, lenght);
      if((symbol > 64 && symbol < 91) || (symbol > 191 && symbol < 224))
         s = StringSetChar(s, lenght, symbol + 32);// тут possible loss of data due to type conversion
      else
         if(symbol > -65 && symbol < -32)
            s = StringSetChar(s, lenght, symbol + 288);// тут possible loss of data due to type conversion
      lenght--;
     }
   return(s);
  }
//+------------------------------------------------------------------+
//| StringUpperCase |
//+------------------------------------------------------------------+
string StringUpperCase(string str)
  {
   string s = str;
   int lenght = StringLen(str) - 1, symbol;
   while(lenght >= 0)
     {
      symbol = StringGetChar(s, lenght);
      if((symbol > 96 && symbol < 123) || (symbol > 223 && symbol < 256))
         s = StringSetChar(s, lenght, symbol - 32);// тут possible loss of data due to type conversion
      else
         if(symbol > -33 && symbol < 0)
            s = StringSetChar(s, lenght, symbol + 224);// тут possible loss of data due to type conversion
      lenght--;
     }
   return(s);
  }

Si cela ne vous dérange pas, aidez-moi à le réparer...
 
Artyom Trishkin:

Le cycle doit être inversé. Sinon, il y aura des questions sur la raison pour laquelle il ne fonctionne pas correctement.

Je ne sais pas ce que ça veut dire.
 
MakarFX:
Je ne comprends pas ce que cela signifie ? ??

Lors de la suppression, la numérotation est décalée si de l'indexation inférieure à l'indexation supérieure, et lors de la boucle inverse, le dernier élément est supprimé.

Lorsque la numérotation des index est décalée, des erreurs de suppression peuvent se produire. L'index du 3ème élément deviendra le second élément, et le second élément est déjà supprimé.

 
Valeriy Yastremskiy:

Lors de la suppression, la numérotation est décalée si de l'indexation inférieure à l'indexation supérieure, et lors de la boucle inverse, le dernier élément est supprimé.

Lorsque la numérotation de l'index est décalée, des erreurs de suppression peuvent se produire. L'index du 3ème élément deviendra le second et le second élément est déjà supprimé.

Dois-je le faire ?

for(int a = ObjectsTotal()-1; a>=0; a--)

 
MakarFX:

Est-ce que je dois faire ça ?


Oui.

 
Valeriy Yastremskiy:

Oui.

Merci.
 
Alekseu Fedotov:

Faites-le :

Et vérifiez l'aide plus souvent.

Alexey, merci beaucoup pour votre aide - j'ai lancé ma machine Graal))))))))))))))))) mais je pense que je reviendrai ici plus d'une fois pour des conseils.

 
Nataliia Darsavelidze:
Bonjour ! Dans les paramètres du graphique, il y a une option "afficher l'historique des transactions". Comment est-elle mise en œuvre dans le code ? Je ne peux pas le supprimer de manière programmatique. Comment allez-vous ?

La question est ouverte.

 
Nataliia Darsavelidze:

La question est ouverte.

La question semble porter sur MT5. La réponse est : pas de manière programmatique. La question peut être close.

 
Nataliia Darsavelidze:

La question est ouverte.

Je n'ai pas entendu parler de l'option, je ne l'ai pas vue.

Mais il est possible de réaliser un programme (script, expert, indicateur)

Raison: