Auto-aprendizagem da linguagem MQL5 a partir do zero - página 67

 
Valeriy Yastremskiy:

A redação não é muito correta, dependendo do iterador, as ações devem ser realizadas no corpo do laço. Dependendo do iterador. E retornar o resultado da realização dessas ações no corpo do loop. Se o loop foi passado e não houve declarações de quebra ou contingência, então para a Expressão 3 e depois para a Expressão 2 e se for Verdadeiro, então com um novo iterador para o corpo do loop.

É isso aí! Vou me enforcar... Não entendia absolutamente nada. Eu precisava de uma pausa para compreender o que eu tinha escrito.

Cumprimentos, Vladimir.

 
MrBrooklin:

A propósito, não há nada na Referência MQL5 sobre o fato de que o laço deve retornar algo após a conclusão. Talvez eu tenha entendido algo errado novamente? Ou talvez se refira à declaração do "se"?

Atenciosamente, Vladimir.

Eu não disse bem, o loop não retorna nada, mas você tem que saber o resultado do cálculo de alguma forma).

Enforque-se cedo, é mais complicado).

 
MrBrooklin:

É isso aí! Vou me enforcar... Não entendo absolutamente nada. Você precisa de uma pausa para compreender o que você escreveu.

Com todo o respeito, Vladimir.

Norm, se você não entender da primeira vez, você tem que ler uma segunda vez... Mas não imediatamente, caminhar ajuda. O ciclo é bem explicado em Kovalev. Ou em livros didáticos em C. Só precisa ser entendido. E então você entenderá onde você precisa e onde não precisa.

Ao iniciar o loop, a primeira iteração da Expressão 1 e no corpo do loop, no final do corpo do loop Expressão 2, depois Expressão 3 e se for Falso o loop termina, e se for verdadeiro a próxima iteração no corpo do loop.

 
VVT:

Eu disse errado, o loop não retorna nada, mas você precisa saber o resultado do cálculo de alguma forma, eu mostrei um exemplo desta solução)

Sim, eu já estou aqui sentado descobrindo isso e quero entendê-lo completamente, o quê e para quê. Obrigado pela dica!

Cumprimentos, Vladimir.

 
Valeriy Yastremskiy:

Norm, se você não entender da primeira vez, você tem que ler uma segunda vez... MAS não imediatamente, caminhar ajuda. O ciclo é bem explicado em Kovalev. Ou em livros didáticos em C. Só precisa ser entendido. E então o entendimento chegará onde é necessário e onde não é.

Certo, devemos ir e almoçar ao mesmo tempo.

Atenciosamente, Vladimir.

 
Valeriy Yastremskiy:

Norm, se você não entender da primeira vez, você tem que ler uma segunda vez... MAS não imediatamente, caminhar ajuda. O ciclo é bem explicado em Kovalev. Ou em livros didáticos em C. Só precisa ser entendido. E então você entenderá onde você precisa e onde não precisa.

Na iniciação do loop, a primeira iteração da expressão 1 e no corpo do loop, no final do corpo do loop, expressão 2, depois expressão 3, e se for Falso, o loop é terminado; se for verdadeiro, a próxima iteração no corpo do loop.

Valery, por favor, esclareça o que você chama de corpo de loop? Expressões 1, 2 e 3 ou a declaração que deve ser executada ao se fazer looping através das posições? Em resumo, você precisa reler o assunto de loops no livro didático de Sergiy Kovalev.

Cumprimentos, Vladimir.

 

Isto foi o que encontrei no tutorial de Sergei Kovalev para a linguagem de programação MQL4:

Формат оператора for

Полноформатный оператор цикла for состоит из заголовка, содержащего Выражение_1, Условие и Выражение_2,
и исполняемого тела цикла, обрамлённого фигурными скобками.

  for (Выражение_1; Условие; Выражение_2)          // Заголовок оператора цикла
      {                                            // Открывающая фигурная скобка
      Блок операторов,                             // Тело цикла может состоять ..
      составляющих тело цикла                      //.. из нескольких операторов
      }                                            // Закрывающая фигурная скобка

Если в операторе for тело цикла составляет один оператор, то фигурные скобки можно опустить.

Cumprimentos, Vladimir.

 
MrBrooklin:

Valery, por favor, esclareça o que você chama o corpo do laço? Expressões 1, 2 e 3 ou a declaração de se, que deve ser executada ao se fazer looping através de posições? Em resumo, você precisa reler o assunto de loops no livro didático de Sergei Kovalev.

Atenciosamente, Vladimir.

O corpo é o conteúdo do operador/função, ou seja, o que exatamente ele faz.

As expressões 1,2,3 são parâmetros obrigatórios, normalmente aparecem na janela de dicas ao escrever o código

 
VVT:

Corpo, este é o conteúdo da declaração/função, ou seja, o que ela faz

As expressões 1,2,3 são parâmetros obrigatórios, normalmente aparecem na janela de dicas ao escrever o código

Obrigado pela dica. Também encontrei as informações sobre o corpo no tutorial de Sergei Kovalev.

Cumprimentos, Vladimir.

 

Se o manual de linguagem de programação MQL5 o tivesse escrito assim de imediato:

Формат оператора for

Полноформатный оператор цикла for состоит из заголовка, содержащего Выражение_1, Выражение_2 и Выражение_3,
и исполняемого тела цикла, обрамлённого фигурными скобками.

  for (Выражение_1; Выражение_2; Выражение_3)      // Заголовок оператора цикла
      {                                            // Открывающая фигурная скобка
      Блок операторов,                             // Тело цикла может состоять ..
      составляющих тело цикла                      //.. из нескольких операторов
      }                                            // Закрывающая фигурная скобка

Если в операторе for тело цикла составляет один оператор, то фигурные скобки можно опустить.

Правило исполнения оператора for такое: "Начиная с ..., до тех пор пока..., с шагом... выполнять следующее: ...".

então não haveria tantas perguntas desnecessárias. Pelo menos, os iniciantes teriam menos perguntas.

Cumprimentos, Vladimir.