小6におすすめな言語 (547レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
42: デフォルトの名無しさん [] 2020/10/18(日)12:19 ID:vmWunLYe(1/2)
>>37
まあ、都市部から地方まで遍く子供達がPCとScratch使えればHaskellの出番は無いんだけどね。
小6向けは言語を変えるんじゃなくて、さらに複雑なアルゴリズムを学ぶ方向かな。
暇つぶしに組み合わせnCrを書いてみた。
数学
0! = 1
n! = n * (n - 1)!
n P 0 = 1
n P r = n * (n -1) P (r - 1)
n C r = n P r / r!
Haskell
fact 0 = 1
fact n = n * fact (n - 1)
n `p` 0 = 1
n `p` r = n * (n - 1) `p` (r - 1)
n `c` r = n `p` r `div` fact r
43: デフォルトの名無しさん [] 2020/10/18(日)12:19 ID:vmWunLYe(2/2)
Python
def fact(n):
a = 1
for x in range(1,n + 1):
a *= x
return a
def p(n,r):
a = 1
for x in range(n - r + 1,n + 1):
a *= x
return a
def c(n,r):
return (p(n,r) // fact(r))
Haskellのfactと`p`はPythonの書き方に合わせるとそれぞれ
fact n = product [1..n]
n `p` r = product [(n - r + 1)..n]
になる。
数学ではproductはΣ(シグマ/sum)の掛け算バージョンであるΠ(大文字のπ)に相当。
普通の言語にはsumはあってもproductは何故か無い。
(まあ作れば良いんだけど)
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.022s