4.5. Qual a diferença de execução da instrução continue quando presente em um for e em um while?

Passo 1

Beleza, vamos resolver mais uma.

Essa aqui é legal começar relembrando o que a instrução continue faz. Quando essa instrução é executada dentro de um laço, o bloco de instruções que o programa está rodando no momento é terminado, e começa a próxima iteração.

Passo 2

Dentro de um for, a próxima iteração depois de um continue seria a pós-instrução.

Olha só, o formato desse laço começa com a definição de um valor inicial, uma condição para que seja executada uma instrução, a instrução e, por fim, a pós-instrução. Nesse caso, a iteração depois da instrução e a pós-instrução, então o continue levaria da instrução para pós-instrução.

Por outro lado, dentro de um while a próxima iteração depois de um continue seria terminar o laço.

Basta analisar o formato do laço de novo. O laço do tipo while nem tem uma pós-instrução dentro do seu formato, então, assim que o programa executar o continue, ele vai terminar o laço, pois isso é a próxima iteração.

Resposta

Dentro de um for o comando continue executa a pós-instrução.

Dentro de um while o comando continue termina o laço.