0
declare
fun {Factorial N}
   local FactorialAux in
      fun {FactorialAux N Product}
     if N == 0 then Product
     else {FactorialAux N-1 {fibo N}|Product}
     end
      end
      {FactorialAux N nil}
   end
end

fun {fibo N}
   if N==1 then 1
   else if N==2 then 1
    else {fibo N-1}+{fibo N-2}
    end
   end
end

{Browse {Factorial 3}}

私のコードはフィボナッチ数のリストを出力します。N=4の場合、最初の4つのフィボナッチ数リストを出力します。これは、質問の見出しに記載されているエラーが発生するコードです。事前に助けてくれてありがとう

4

1 に答える 1

2

変数は Oz の大文字で始まる必要があります。プロシージャと関数の名前は常に変数であるため、大文字で始める必要があります。

関数fiboを呼び出す必要がありますFibo。もちろん、すべての呼び出しfiboも修正する必要があります。

于 2012-08-16T19:58:57.550 に答える