Fpc p02
Autores ***** - ********************************* 51083 - Alexandre Manuel Da Silva Ribeiro
Colaborações sem colaborações
A:
1- Uma característica distintiva do Processo Recursivo é a existência de um conjunto de operações pendentes até o momento em que possam ser calculadas.(1ª fase - Expansão / 2ª fase Contração)
2- O primeiro passo é denominado "Wishful thinking" (faz de conta). Consiste em imaginarmos que existe um procedimento que resolve uma versão mais simples do problema. O segundo passo é a Decomposição do problema, no qual resolvemos o nosso problema segundo o procedimento anteriormente imaginado. O terceiro passo é a Indentificação do Problema não Decomposivéis, em que tentámos localizar as condições de paragem.
3- Os componentes dos algoritmos recursivos são: - Teste - Caso Base - Caso Recursivo
Para o procedimento que calcula os números de Fibonacci: Teste --> (= n 0) e (= n 1) Caso Base --> (0) e (1) Caso Recursivo --> (+ (fib (- n 1)) (fib (- n 2)))
B:
1- ii. / v.
2- i. (fib 2) (cond ((= 2 0) 0) ((= 2 1) 1) (else (+ (fib (- 2 1)) (fib (- 2 2))))) (cond (#f 0) ((= 2 1) 1) (else (+ (fib (- 2 1)) (fib (- 2 2))))) (cond ((= 2 1) 1) (else (+ (fib (- 2 1)) (fib (- 2 2))))) (cond (#f 1) (else (+ (fib (- 2 1)) (fib (- 2 2))))) (cond (else (+ (fib (- 2 1)) (fib (- 2 2))))) (+ (fib (- 2 1)) (fib (- 2 2))) (+ (fib 1)) (fib (- 2 2))) (+ (cond ((= 1 0) 0) ((= 1 1) 1) (else (+ (fib (- 1 1)) (fib (- 1 2))))) (fib (-2 2))) (+ (cond (#f 0) ((= 1 1) 1) (else (+ (fib (- 1 1)) (fib (- 1 2))))) (fib (-2 2))) (+ (cond ((= 1 1) 1) (else (+ (fib (- 1 1)) (fib (- 1 2))))) (fib (-2 2))) (+ (cond (#t 1) (else (+ (fib (- 1 1)) (fib (- 1 2))))) (fib (-2 2))) (+ 1 (fib (- 2 2))) (+ 1 (fib 0)) (+ 1 (cond ((= 0 0) 0) ((= 0 1) 1) (else (+ (fib (- 0 1)) (fib (- 0 2)))))) (+ 1 (cond (#t 0)