Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Duvida

pode me explicar melhor este caso?

e pq o programa trava se eu somar ao invés de subtrair

<meta charset="UTF-8">
<script>
    function pulaLinha() {
        document.write("<br>");
    }

    function mostra(frase) {
        document.write(frase);
        pulaLinha();
    }

    var contador = 30;

    while(contador <= 40) {

        if( contador == 33 ) {
        contador = contador + 1;
        }
        if(contador == 37) {    
            contador = contador + 1;
        }
        else {
        mostra(contador);
        contador = contador + 1; 
        }
      }

    mostra("FIM");

</script>
1 resposta
solução!

Como é o mesmo código do curso, não devia travar. Mas usa esse aqui que é menor.

   var contador = 30
   while (contador <= 40){
      if(contador != 33 && contador != 37){
           mostra(contador);
      }

        contador = contador + 1;
   }

Ps:Só um adendo, eu só usei um while, e dentro dele botei um if com 2 condições de conjunção(&&). E se o contador for diferente de 33 e 37, ele imprime dentro do if para no código final não travar e nem imprimir o 33 e 37 por bug. E dentro do while, você soma mais um. Se você por a soma do contador dentro do if vai ter um bug, porque ele não é uma repetição, mas sim uma condição.