Cara... teu Desgin Recipe tem que ser mais claro. Tens que pensar nos passos que vais fazer antes de começar o codigo. Vale mais a pena começar todo o exercicio de novo do que ficar tentando fazer enxertos no codigo.
1 - passo Identificar se a Arvore é vazia
1.1 se nao é... entao ja manda pra lista a cor do olho (cons (child-eyes a-ftn)
1.2 perguntar pra mae (eye-colors (child-mother a-ftree)) - recursividade
1.3 perguntar pro pai (eye-colors (child-father a-ftree)) - recursividade
Estes sao os passos. Entretanto para criar o elemento na lista exige-se o cons mais 2 argumentos (por exemplo (cons 'bola empty) 'bola e empty sao argumentos)
Só que só possivel por o (cons (child-eyes a-ftn) mais uma das chamadas (cons (child-eyes a-ftn) (eye-colors (child-mother a-ftn)))
E a chamada do pai??? Ai entra o append
No segundo argumentos da criação do elemento na lista que é o (eye-colors (child-mother a-ftn)) você tem que usar o append e chamar o pai também:
(append (eye-colors (child-mother a-ftree))
(eye-colors (child-father a-ftree)))
Vai ficar (cons (child-eyes a-ftn) seguido do append como segundo argumento contendo 2 chamadas (pro pai e pra mae)
Faz o teste!
Date: Tue, 14 Apr 2009 20:01:53 -0300
Subject: Essa aqui é sobre árvores: 14.1.5
From:
eduardo....@gmail.comTo:
htdp-...@googlegroups.com