Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Deixa ver se eu entendi...

No momento em que você não permite a repetição de números na array segredos, então o ' break; '

se torna inútil né, pois ao varrer a array para verificar se o usuário acertou, nunca irá aparecer duas ou mais vezes "acertou"

if(input.value == segredos[posicao]) {
                achou = true;
                alert("Você ACERTOU!!!");
                break;
            }
2 respostas

Olá, Danilo! Tudo bem?

Se a array segredos não permite a repetição de números, então o comando 'break' se torna desnecessário, pois não haverá a necessidade de interromper o loop caso o usuário acerte o número.

E como ele não permite a repetição de números, então o valor da posição atual nunca será igual a outro valor já verificado anteriormente, portanto, não haverá a necessidade de interromper o loop com o comando 'break'. Gostei do seu empenho de pensar no funcionamento do problema, espero que continue assim.

Caso durante os seus estudos você tenha dúvidas ou problemas, recorra ao fórum, estaremos aqui para ajudá-lo.

Abraços e bons estudos!

solução!

Realmente, mas pensando bem agora, é bom ter o break porque após (se) encontrar o número ele não vai precisar ficar gastando processador atoa em verificar o resto do array. Ou seja, se tenho um array de um milhão de números aleatórios e não repetidos, se o usuário acertar um número do array e por coincidência esse número estivesse na posição 0 do array, se não tivesse o break ali, o programa iria ter que ficar verificando 999 999 posições do array, inutilmente.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software