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

Dúvida exercício 07-O bolão que deseja emagrecer!

Meu código ficou assim:

<canvas width="600" height="400"></canvas>

<script>
    var tela = document.querySelector('canvas');
    var pincel = tela.getContext('2d');

    pincel.fillStyle = 'grey';
    pincel.fillRect(0, 0, 600, 400);

    var raio = 10;

    function desenhaCirculo(evento) {

        var x = evento.pageX - tela.offsetLeft;
        var y = evento.pageY - tela.offsetTop;

        console.log(x + ',' + y);

        if (evento.shiftKey) {
            if(raio < 40) {
                raio = raio + 10;
            }

        }

        if(evento.altKey) {
            if(raio > 10) {
                raio = raio - 5;
            }
        }

        pincel.fillStyle = 'blue';
        pincel.beginPath();
        pincel.arc(x, y, raio, 0, 2 * 3.14);
        pincel.fill();

    }

    tela.onclick = desenhaCirculo;

</script>

Depois que comparei com a resposta, não entendi o por que precisa desse incremento(5), e por que else if e não só if?

if (evento.shiftKey && evento.altKey) {

            alert('Só aperte uma tecla por vez, por favor!');

        } else if(evento.shiftKey && raio + 5 <= 40) {
            raio = raio + 5;

        } else if(evento.altKey && raio - 5 >= 10) {
            raio = raio - 5;
3 respostas

Os ifs e else ifs nada mais que para você definir o fluxo e se a primeira condição foi aceita, ele nem avalia a segunda (se existe um else if) caso contrário ele ira avaliar as duas, mesmo que a segundo seja impossivel de acontecer pois ja foi satisfeita na primeira condição.

Com relação ao incremento, não entendi sua pergunta, esta se referinco ao argumento do if ou dentro do corpo?

solução!

Oi Hygor ao que me parece sua resposta está correta pois o incremento é de 10 e o decremento é de 5, no entanto na resposta do instrutor está que tanto o incremento e o decremento tem o mesmo valor de 5, por isso existe outra implementação, vou solicitar a revisão técnica da atividade.Acredito que alguém tenha sugerido equivocadamente essa revisão foi aprovado, pois quando fiz o curso ela estava correta.

A solicitação está aqui assim que aprovada lhe informo.

Espero ter ajudado e bons estudos.

Entao Alan, obrigado pela resposta, agora ficou mais claro a questao do else if.

Na questao do incremento, minha duvida é o pq do incremento 5 dentro do if, apesar de ter lido a explicação do exercicio, o pq ainda não ficou muito claro para mim.

Se puder explicar, agradeço.

Opa, Maison, totalmente sem querer que achei esse erro, só estava com dúvida no pq do incremento dentro do if mesmo.

Mas obrigado a ajuda.