Funções em Javascript podem ser declaradas com a sintaxe abaixo. Chame a função declarada passando os valores corretos para o Sphero pegar o tesouro na velocidade máxima, com a cauda acesa. Lembre-se: a chamada deve ficar após a declaração da função.
Exemplo da sintaxe de declaração de uma função Javascript:
function nome (parametro1, parametro2) {
código a ser executado
}
Para uma função ser executada, ela precisa ser chamada. Exemplos:
nome(1,'Maria'); // chama a função nome passando 1 no parametro1 e 'Maria' no parametro2.
nome(2300,'João Carlos'); // chama a função nome passando 2300 no parametro1 e 'João Carlos' no parametro2.
Implemente a função quadrado. Ela não recebe parâmetros e faz o Sphero rolar em um quadrado com velocidade de 150, para não sair do tapete!
Comandos da API (Contrato que programadores devem cumprir para programar corretamente):
sprk.setBackLed(value); // Acende ou apaga a luz da cauda do Sphero.
// parâmetro value é do tipo int. Obrigatório. Pode valer 0 (apaga) ou 255 (acende)
sprk.color('name'); // Acende a luz principal do Sphero, na cor innformada.
// parâmetro name é do tipo string. Obrigatório. Pode conter o nome de uma cor em inglês (Ex.: 'red', 'blue', ...).
sprk.roll(velocity,direction); // Rola o Sphero com a velocidade e sentido informados.
// parâmetro velocity é do tipo int. Obrigatório. Pode valer entre 0 e 255 Quanto maior o valor, maior a velocidade.
// parâmetro direction é do tipo int. Opcional. Pode valer entre 0 (default) e 360. Indica o ângulo do movimento em sentido anti-horário.
Desafio Intermediário: Implemente a função triangulo por completo (similar à função quadrado) e execute!
Obs.: a simulação é aproximada, apenas como referência.
Não reflete com exatidão os movimentos do robô real.
Desafio Avançado: Finalize dois comandos faltantes na função poligono. Ela recebe um parâmetro numeroLados e outro cor e então rola o Sphero por qualquer polígono, na cor desejada.
Dicas:
y = 360 / x; // Este comando divide 360 pelo valor de x e coloca o resultado em y.
y = Math.trunc(360 / x); // A função Math.trunc trunca o resultado da divisão.
// o laço "for" do Javascript repete "total" vezes os comandos envolvidos,
// incrementando 1 na variável "passo", a cada iteração do laço.
for (var passo = 0; passo < total; passo++) {
comandos aqui
}
// use uma velocidade que evite colisão com as bordas, que prejudicam a trajetória.
SyntaxError: Unexpected number
SyntaxError: missing ) after argument list
SyntaxError: Unexpected identifier