開発環境
- OS X El Capitan - Apple (OS)
- Emacs (Text Editor)
- Oz (プログラミング言語)
- Mozartプログラミングシステム(Mozart 2) (実装)
コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)(セイフ・ハリディ (著)、ピーター・ヴァン・ロイ (著)、Peter Van-Roy (著)、 Seif Haridi (著)、羽永 洋 (翻訳)
、翔泳社、原書: Concepts, Techniques, and Models of Computer Programming(CTM))の第1章(プログラミング概念入門)、1.18(練習問題)、2-(a)、(b).(組み合わせの計算)を取り組んでみる。
2-(a)、(b).(組み合わせの計算)
コード(Emacs)
declare
fun {Fact N}
if N==0 then
1
else
N*{Fact N-1}
end
end
fun {F N C}
if C==1 then
N
else
N*{F N-1 C-1}
end
end
fun {Comb N K}
if K==0 then
1
else
{F N K} div {Fact K}
end
end
fun {CombFast N K}
if K==0 then
1
else
if K > N div 2 then
{Comb N N-K}
else
{Comb N K}
end
end
end
{Browse {Comb 10 0}}
{Browse {Comb 10 2}}
{Browse {Comb 10 8}}
{Browse {CombFast 10 2}}
{Browse {CombFast 10 8}}
{Browse {CombFast 100 90}}
0 コメント:
コメントを投稿