Oi Luana!!
Então, quando pede pra desenhar o circulo:
function desenhaCirculo(x, y, raio) ,
o que está entre parênteses são as posições(x e y) dela no canvas e a medida(raio) dela. O 20 no caso, é pq o instrutor deixou setado a posição y, bem no alto, mas vc pode alterar e ver a diferença.
Depois vem a condição:
if (x > 600) , isso diz que: Se o x que tem dentro do circulo passar da posição 600 do eixo X, o circulo recebe o movimento contrário (-1) e volta, inverte o sentido.
E else if (x < 0) , diz que senão ( senão por que? Porque só existem duas condições para o X receber valor inverso, ou é ultrapassando 600, ou é ultrapassando zero), seguindo, se ele não ultrapassar o 600 ele ultrapassa o zero e então ele o X, recebe +1 para inverter seu sentido.
Aqui diz exatamente o que tem que acontecer, maior que o 600 e menor que o zero.
São pontos de coordenadas dentro de um canvas em que naquele exato ponto x600 acontece algo. E no X0 acontece o também.
-vc disse:
"Mas quando estiver no eixo x 200, por exemplo. É maior que zero, e menor que 600."
Mas a condição é exatamente pra o quando o X do circulo estiver no exato ponto no eixo 600 ou no eixo zero.
O circulo começa com velocidade positiva, quando chega em 600, recebe -1 e volta. Quando chega em zero, recebe +1 e volta novamente.
É como se dissesse para o circulo, quando bater na borda tem que voltar. Mas como o circulo vai saber onde é a borda? Neste momento é que a condição de que a borda é representada por zero e 600.
Se vc colocar if (x > 300), o circulo vai até o meio e volta. Porque vc colocou essa condição!!
E essa condição é que diz tudo!
Espero ter ajudado em alguma coisinha que seja!!
Bons estudos!!