1
resposta

Probabilidade de erro da raquete do oponente

Na parte saiba mais me ocorreu algumas dúvidas no códico. function calculaChanceDeErrar() { if (pontosDoOponente >= meusPontos) { chanceDeErrar += 1 if (chanceDeErrar >= 39){ chanceDeErrar = 40 } } else { chanceDeErrar -= 1 if (chanceDeErrar <= 35){ chanceDeErrar = 35 } } } Nao entendi a função do segundo if , sendo >= 39 a a chance de erra é igual a 40? Qual a função do else? Por fim, se chance de errar <=35, chance de errar = a 35? Nao entendi essas partes.

1 resposta

Olá, Igor, eu interpretei assim, veja se concorda:


let chanceDeErrar = 0;

function calculaChanceDeErrar() {
      if (pontosDoOponente >= meusPontos) {
        chanceDeErrar += 1
        if (chanceDeErrar >= 39){
            chanceDeErrar = 40
        }
      } else {
            chanceDeErrar -= 1
        if (chanceDeErrar <= 35){
            chanceDeErrar = 35
        }
      }
}

Condição: se (if) pontosDoOponente >= meusPontos, o contador chanceDeErrar será incrementado em 1 unidade e se for igual ou maior que 39, o valor dele será fixado em 40.

Então, na função movimentaRaqueteOponente, para calcular a velocidade, o valor de chanceDeErrar será esse (40).

Se não (else) (ou seja, pontosDoOponente < meusPontos) o contador chanceDeErrar será decrementado em 1 unidade e se for menor ou igual a 35, o valor dele será fixado em 35.

Fiz esta tabela para auxiliar o raciocínio:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Ou seja, é uma maneira de regular a pontuação, procurando deixá-la um pouco mais justa.

Segue o código do cálculo da velocidade:

function movimentaRaqueteOponente(){
  velocidadeYOponente = yBolinha -yRaqueteOponente - raqueteComprimento / 2 - 30;
  yRaqueteOponente += velocidadeYOponente + chanceDeErrar
  calculaChanceDeErrar()
}

Espero ter contribuído para esclarecer sua dúvida. Bons estudos!

Dica: para inserir um código aqui, basta clicar no botão </> e colar o código ;)

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