![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Eu não sei...
Na minha opinião, tanto tais blocos "vazios" como "loops infinitos" (seja por ou enquanto) são um estilo de programação ruim, perigoso para erros potencialmente difíceis de calcular.
Se temos um "loop infinito", isso significa que há algumas saídas e quebras adicionais dentro do loop e elas nem sempre são óbvias. A propósito, eu também não gosto de operador de pausa - eu sempre uso operador contínuo em um loop.
E, como foi dito aqui, a ofuscação do código é apenas infantil. Grandes programadores-copiadores reunidos aqui que temem que alguém venda seu código ou receba milhões de dólares de outras formas... O orgulho é um dos pecados mortais!
não estão de acordo.
Tente reescrever este código sem o loop infinito e quebrar
não concordam.
Tente reescrever este código sem o loop infinito e quebrar
Uma tarefa interessante.
Na minha opinião, o código apresentado é bastante "opaco" e difícil de entender, embora a estrutura seja clara para mim, e a função seja útil.
À primeira vista, o laço deve ser (i<size) {....}, mas eu ainda não entendi bem.
Assim que eu conseguir, vou chegar a ele.
Uma tarefa interessante.
Na minha opinião, o código apresentado é bastante "opaco" e difícil de entender, embora a estrutura seja clara para mim e a função seja útil.
À primeira vista, o laço deve ser (i<size) {....}, mas ainda não o entendi completamente.
Assim que eu chegar a ele, eu chegarei a ele.
A função remove todos os valores de val do array a[] e o compacta, removendo "furos" dos elementos apagados sem alterar a seqüência de dados.
A função apaga todos os valores de val da matriz a[] e a compacta, removendo "furos" dos elementos apagados sem alterar a seqüência de dados.
Sim, sim, eu lhe disse - o propósito é claro, a função em si é útil. Agora ainda não posso, mais tarde vou descobrir como funciona, e vou reescrevê-la sem loop infinito. Bem, e então - vou escrever minha variante de função, como eu escreveria.
Sim, sim, eu lhe disse - o propósito é claro, a função em si é útil. Agora eu ainda não posso, mais tarde eu vou ordenar meu trabalho e reescrevê-lo sem loop infinito. Bem, e então - vou escrever minha versão da função, como eu a escreveria.
o código foi tirado daqui. Houve uma competição espontânea há um ano e meio atrás.
não estão de acordo.
Tente reescrever este código sem o loop infinito e quebrar
Sim, é claro que existem variantes mais compactas, mas mais lentas.
Sua variante é 2-3 vezes mais lenta do que acima e há um erro em algum lugar, pois dá um checksum errado.
Estamos falando da opção mais rápida sem o HashSet.
Eu não sei...
Na minha opinião, tanto tais blocos "vazios" como "loops infinitos" (seja por ou enquanto) são um estilo de programação ruim, perigoso para erros potencialmente difíceis de calcular.
Se temos um "loop infinito", isso significa que há algumas saídas e quebras adicionais dentro do loop e elas nem sempre são óbvias. A propósito, eu também não gosto de operador de pausa - eu sempre uso operador contínuo em um loop.
E, como foi dito aqui, a ofuscação do código é apenas infantil. Grandes programadores-copiadores reunidos aqui que temem que alguém venda seu código ou receba milhões de dólares de outras formas... O orgulho é um dos pecados mortais!
Maxim, não funciona assim, deveria haver 2 ciclos, caso contrário não há como. Primeiro você remove elementos desnecessários, depois "encolhe" a matriz para cima (flutua). A segunda etapa está dentro da primeira.
A para construção envolve a verificação de uma condição e a saída antes do início do ciclo.
A construção de um loop envolve a verificação de uma condição e a saída antes que o loop termine.
Um loop infinito implica em verificar a condição e sair em qualquer ponto do loop.