1
resposta

Lógica de Programação I - Aula 17 - Repetições aninhadas

Nesta aula, o professor conseguiu deixar o código gerar 10 asteriscos e a cada 10 asteriscos ele pulava uma linha e fazia um total de 3 linhas com 10 colunas, porém eu comparei detalhe por detalhe do meu código com o do professor e mesmo assim o meu só da 3 linhas e 3 colunas e eu não sei onde está o erro ou se essa é uma atualização do JavaScript. Alguém pode me ajudar a saber porque está diferente?

![](imagem do código e o resultado no navegador )

1 resposta

Oi Caio, como você está? Espero que esteja bem.

Peço desculpas pelo retorno tardio.

Observei o seu código e notei dois possíveis problemas que possam estar ocasionando isso:

  • No segundo for (linha 19), você inseriu um ponto e vírgula antes das chaves, o que acabou fechando o laço sem alguma instrução de comando. Nesse caso, o programa irá ler a próxima instrução que seria o document.write(“*”), o que resultaria em três “*”, um em cada linha.

  • Além disso, nesse mesmo for, a condição de parada está “coluna < 10”, o que deveria estar coluna <= 10, já que sua variável de inicialização começa em 1.

O código corrigido ficaria assim:

<script>

    function pulaLinha() {

        document.write("<br>");
    }

    function mostra(frase){

        document.write(frase);
        pulaLinha();
    }

    for(var linha = 1; linha <= 3; linha++) {

        for(var coluna = 1; coluna <= 10; coluna++) {
            document.write("*");
        }
        pulaLinha();
    }

</script>

Espero ter ajudado!

Reforço que estou à disposição para tirar dúvidas.

Abraços e bons estudos!