パスワードを忘れた? アカウント作成
436650 journal

t-nissieの日記: 世間で流行(?)のべき乗計算をF#でしてみた

日記 by t-nissie

$ fsi.exe
   :
> let even n = (n % 2)=0;;
 
val even : int -> bool
 
> let square n = n * n;;
 
val square : int -> int
 
> let rec power m n =
if n = 0 then 1 else
if even n then power (square m) (n / 2) else
m * power m (n - 1);;
 
val power : int -> int -> int
 
> power 2 15;;
val it : int = 32768
> power 2 20;;
val it : int = 1048576
> let power2 n = power 2 n;;
 
val power2 : int -> int
 
> power2 20;;
val it : int = 1048576
> #quit;;

ってか、fsi.exeにヒストリ機能はないのかい?
それともEmacsとかから使うべきなのか。

アキュムレータと末尾再帰って何?おいしいの?
上のままじゃ末尾再帰になってなくて最適化されないの?????

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

皆さんもソースを読むときに、行と行の間を読むような気持ちで見てほしい -- あるハッカー

読み込み中...