Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1327

 
Seguiu o exemplo MT4 "STRINGS: ASCII CHARACTERS TABELA E UTILIZAÇÃO"

//+------------------------------------------------------------------+
//| 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);
  }

Se você não se importa, por favor, ajude-me a consertá-lo...
 
Artyom Trishkin:

O ciclo deve ser revertido. Caso contrário, haverá perguntas sobre o porquê de não estar funcionando corretamente.

Eu não sei o que isso significa.
 
MakarFX:
Eu não entendo o que isto significa???

Ao apagar, a numeração é deslocada se de menor para maior indexação, e ao reverter o looping, o último elemento é apagado.

Quando a numeração do índice é deslocada, podem ocorrer erros de exclusão. O índice do 3º elemento se tornará o segundo elemento, e o segundo elemento já está apagado.

 
Valeriy Yastremskiy:

Ao apagar, a numeração é deslocada se de menor para maior indexação, e ao reverter o looping, o último elemento é apagado.

Quando a numeração do índice é deslocada, podem ocorrer erros de exclusão. O índice do 3º elemento se tornará o segundo e o segundo elemento já está apagado.

Devo fazer isso?

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

 
MakarFX:

Eu tenho que fazer isso?


Sim.

 
Valeriy Yastremskiy:

Sim.

Obrigado
 
Alekseu Fedotov:

Faça isso:

E verifique a ajuda com mais freqüência.

Alexey, muito obrigado por sua ajuda - comecei minha máquina de graal))))))))))))))))), mas acho que voltarei aqui mais de uma vez para me aconselhar.

 
Nataliia Darsavelidze:
Olá! nas configurações do gráfico há uma opção "mostrar histórico comercial". Como ele é implementado no código? Não posso removê-lo de forma programática. Como você faz?

A questão está em aberto.

 
Nataliia Darsavelidze:

A questão está em aberto.

A questão parece ser sobre o MT5. A resposta é: Não programática. A questão pode ser encerrada.

 
Nataliia Darsavelidze:

A questão está em aberto.

Ainda não ouvi falar da opção, ainda não a vi.

Mas é possível fazer um programa (roteiro, especialista, indicador)