1
resposta

DICA = DÚVIDA

FIZ A LINHA DE marcaPonto de duas maneiras, mas não sei se há algum erro (se pode ou não ser assim), e funcionou dos dois jeitos. a) uma incluindo um novo if:

function marcaPonto(){ if (yAtor < 15){ meusPontos += 1; if (yAtor < 15){ yAtor = 366; } } }

b) outra apenas incluindo yAtor = 366, dentro do if (yAtor <15)... function marcaPonto(){ if (yAtor < 15){ meusPontos += 1; yAtor = 366; } }

1 resposta

Oi Elivelton, tudo bem?

Ambas as suas implementações estão corretas e vão funcionar, mas a segunda opção é mais eficiente e limpa.

Na primeira opção (a), você está verificando duas vezes se yAtor < 15, o que é desnecessário, pois se a primeira condição for verdadeira, a segunda certamente também será. Isso faz com que o código fique mais longo e um pouco mais difícil de ler.

Na segunda opção (b), você verifica a condição apenas uma vez e, se for verdadeira, executa duas ações: incrementa meusPontos e redefine yAtor. Isso torna o código mais eficiente (pois a condição é verificada apenas uma vez) e mais fácil de ler.

Então, em geral, é melhor seguir a segunda opção quando você quer que várias ações sejam realizadas se uma condição for verdadeira.

Aqui está um exemplo para ilustrar isso:

function marcaPonto(){
  if (yAtor < 15){
    meusPontos += 1;
    yAtor = 366;
    console.log("Ponto marcado e yAtor resetado!");
  }
}

Nesse exemplo, se yAtor < 15, o programa incrementará meusPontos, resetará yAtor e imprimirá uma mensagem no console. Tudo isso acontece apenas com uma verificação da condição.

Espero ter ajudado.

Um abraço e bons estudos.