2016-11-06 9 views
-2

これは誰でも再帰から反復に変換できますか?単純なコードは再帰関数からループに変換する必要があります

BEGIN SEQ(n) 
    IF (n EQUALS 1) THEN 
    RETURN 3 
    ELSEIF (n EQUALS 2) THEN 
    RETURN 2 
    ELSE 
    RETURN SEQ(n – 2) + SEQ(n – 1) 
    ENDIF 
END 
+0

これはどのようなプログラミング言語ですか?ご使用の言語で質問にタグを付けてください。あなたの質問を更新するには、投稿の下の** "[編集]" **リンクをクリックしてください。ありがとうございました。 – Pang

+0

私たちはここで緊急に問題になることはないでしょう(下降、投票に投票しました)。これをあなたが使用している言語でマークし、自分自身でうまくやってください。また、あなたの質問を緊急としてマークしないでください。それはボランティアに対処する方法ではありません。本当に私たちのための緊急ではありません。 – halfer

答えて

0

これらは、その後、あなたは、nを渡された場合、nは1または2であるならば、あなたは特別なケースを作るところですから、それを設定することができ5、7など を行く、3,2で始まるFibonaccisですそうでなければあなたのようなものを言う: a = 3 b = 2 のために(私はあなたのために指数を把握するために残している) {temp = b; b = b + a; a = temp} return b

これは宿題の問題であると思われ、回答はすべての作業を行うものではないため、これ以上言いたくはありません。

+0

または、nが1だけの場合は、特別な場合があります。 nが2の場合、forループはゼロ回実行できると思います。残りは意味をなさないでしょう。 –

関連する問題