Exercício 13: Passando vários parâmetros

Passando vários parâmetros

Como adiantamos pra você no exercício anterior, os procedimentos podem ter mais de um parâmetro (ou buraquinho).

Por exemplo: o que aconteceria se agora queremos que DesenharLinha3 sirva para desenhar linhas em qualquer direção? Sem dúvida necessitaremos que quem use o procedimento nos diga, além da cor, em qual direcao quer que desenhemos a linha; e para isso necessitamos um novo parâmetro.

E como se faz isso? Muito fácil, da mesma maneira que fazemos quando escrevemos, vamos separar cada parâmetro usando vírgulas. Veja como fica:

procedure DesenharLinha3(cor, direcao) {
  Colocar(cor)
  Mover(direcao)
  Colocar(cor)
  Mover(direcao)
  Colocar(cor)
}

(Para simplificar a explicação, por enquanto vamos esquecer da posição final da garra. Já voltaremos com isso nas próximas unidades.)

Sua tarefa agora é escrever um program que use a nova versão de DesenharLinha3 (não necessita implementar, apenas usá-la) e desenhe um quadrado multicolorido como este:

GBB/1.0 size 4 4 cell 0 1 Azul 1 cell 0 2 Azul 1 cell 0 3 Azul 1 cell 1 3 Negro 1 cell 2 3 Negro 1 cell 3 3 Negro 1 cell 3 2 Rojo 1 cell 3 1 Rojo 1 cell 3 0 Rojo 1 cell 2 0 Verde 1 cell 1 0 Verde 1 cell 0 0 Verde 1 head 0 0

Dá-me uma dica!

Alguns tipos que deve considerar quando use um procedimento com parâmetros:

  • os valores dos parâmetros devem estar entre parênteses, depois do nome do procedimento e separados por vírgulas: DesenharLinha3(Verde, Sul)
  • a quantidade importa: não passar nem mais nem menos parâmetros do que o procedimento espera.
  • a ordem importa: DesenharLinha3(Vermelho, Norte) não é o mesmo que DesenharLinha3(Norte, Vermelho)

Mas não faça apenas o que dissemos! Antes de enviar a solução correta, tente quebrar algumas dessas regras e observe o que acontece.

Você deve fazer o login antes de começar a enviar suas soluções

Opa! Sua solução não pode ser executada

  • Verifique se o seu programa não possui recursão ou um loop infinito
  • Verifique se você tem uma conexão com a internet
  • Espere um pouco e tente novamente

Estamos processando sua solução

Se não mostrar automaticamente em alguns segundos, pressione F5