Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

Limus

Programacao em Scheme

Mensagens Recomendadas

Limus    0
Limus

Ola,

Sera que alguem me poderia ajudar e mostrar-me (com uma explicacao se possivel  :P) como posso obter uma nova versao do procedimento abaixo, mas gerando um processo iterativo em vez de recursivo. Obrigado :)

(define (soma x)
   (if (= x 0)
       x
       (+ (transforma x) (soma (- x 1)))))

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
karva    0
karva

Basta usar um procedimento auxiliar que recebe o n, e a soma temporária, chamando a cada passo com n-1 e com a soma dada, mais o transforma do n.

BTW, bem-vindo à LEIC.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade