小6におすすめな言語

2020/08/25(火) 15:17:33.43ID:j49hN96g
教えてください。
2020/08/25(火) 15:45:35.41ID:0stN+p5I
C#
2020/08/25(火) 16:14:18.80ID:k8KKzgMK
>>1
こういう糞スレ立ててる時点で言語なんか無理だから養護施設に入りなさい
2020/08/25(火) 17:50:50.89ID:XqmbJWy/
教科書を見なさい。未だコンピュータ教育してない学校なんてあるの?

取り敢えずMicro:bit これでLED光らせたり、ブザーを鳴らしたりして遊べば良い。 結構遊べる。

最終的には Micro Python になるが、Microsoftのツールを使うとJavascript しか見えない。
2020/08/26(水) 01:42:37.29ID:umdUjTz4
うちの教室ではみんなunity & C#だな
2020/08/26(水) 01:53:30.42ID:aAdgcY6X
>>5 嘘つけ、検定教科書にはそんなの載っていない。
2020/08/26(水) 03:16:31.81ID:+QXa9S53
専門学校かもしれないぞ
2020/08/26(水) 04:08:06.25ID:sDqnZwli
小学生はロゴだろ
2020/08/29(土) 13:59:41.30ID:pfNMTZZq
pro2020買ったけど謳い文句の「コンピューターを超えた」の割にOSがチンカスすぎてパソコンの変わりにはならなかったしペンシル買ったけど絵は描かないしで結局キンドル専用機になった
マックOS選べたら良いのに。
ウォッチ買ってても使いこなせなかっただろうな。なんせ使い手が
2020/09/01(火) 16:41:45.08ID:wZEdInic
>>1
Scratchでまずプログラミングの基礎を身につける。テレビでも教われる
2020/09/01(火) 20:42:57.41ID:mxE4dI1a
俺が小6の時はベーシックから入ってマシン語やってたな
ベーマガによく投稿していたあの頃
2020/09/04(金) 17:19:35.76ID:vUwVPqVi
幼稚園年長からBASICしてた
PC8801mkIIで

今、三次元系のライブラリ設計してる
13デフォルトの名無しさん
垢版 |
2020/09/04(金) 19:48:36.26ID:WFvG6Ntz
Scratchが定番では?

小6なら文字式を習ってるはずなので数学をプログラミング言語としても良いし、ほぼ動く数学といって良いHaskellも選択肢の一つかもね。
再帰とセクション覚えれば自分で掛け算演算子や割り算演算子を作れるから、算数の理解を深めるのに良いと思う。
2020/09/04(金) 23:30:13.65ID:H/ZJRxDG
やりたいことも書かない人が「おすすめは何ですか」って聞いてマジレスする方もどうかしている
2020/09/05(土) 20:02:10.23ID:Q89HGuRi
js一択
2020/09/05(土) 21:49:12.91ID:qef5ttAc
中学生ならjc
高校生ならjk
2020/09/06(日) 16:28:24.61ID:mV/+hzQH
Racketインストールしてやって素数夜曲を買い与えておけばいい
18デフォルトの名無しさん
垢版 |
2020/09/13(日) 21:26:20.50ID:te8H2Dpy
>>13書いたついでに宣伝。
小学生向けHaskell入門書、Amazonにて絶賛発売中です。
限られた時間でなるべく多くプログラミングに親しんでもらう為に、教える文法は最小限に抑えてますが、
それでもPythonやRubyにそれほど見劣りしない表現力を保ってます。

「パソコンが買えなくてもプログラマーを諦めない君へ 〜小学生のHaskell入門〜」



参考までに、高階関数もリスト内包表記も無しで、リスト結合演算子から自作してのクイックソート

myqsort [] = []
myqsort [x] = [x]
myqsort (x:xs) = myqsort (small x xs) ^++ [x] ^++ myqsort (large x xs)

(^++) [] ys = ys
(^++) xs [] = xs
(^++) (x:xs) ys = x:(^++) xs ys

small n [] = []
small n (x:xs) | x <= n = x:small n xs
small n (x:xs) = small n xs

large n [] = []
large n (x:xs) | x > n = x:large n xs
large n (x:xs) = large n xs
19デフォルトの名無しさん
垢版 |
2020/09/13(日) 21:36:27.11ID:te8H2Dpy
掛け算演算子はこんな感じ。
(ユニコード文字の記号も演算子に使える。Haskellの掛け算演算子(*)と被らないので、そのまま動く)

(×) a 0 = 0
(×) a b = a + (×) a (b - 1)

2 × 3
= 2 + (×) 2 (3 - 1)
= 2 + 2 + (×) 2 (2 - 1)
= 2 + 2 + 2 + (×) 2 (1 - 1)
= 2 + 2 + 2 + (×) 2 0
= 2 + 2 + 2 + 0 ((×) a 0 = 0により、0が返る)
= 6
2020/09/13(日) 21:56:50.39ID:0g3u87pq
Rubyキチの次はHaskellキチかよ
クソスレ上げてまで必死とか質の悪い荒らし
21デフォルトの名無しさん
垢版 |
2020/09/18(金) 21:16:59.66ID:bVx/alhd
>>20
>>18の本のタイトル通り、PC持ってない子供でもプログラミングの勉強出来る様にって書いたものだから、PC持ってるならScratchで良い。

ただ、Haskellは算数や理科の授業と非常に親和性が高い。
文法の勉強とかなら国語との相性も良い。

算数の宿題も、ただ解くより

(1) 2 + 3 (2) 5 + 4 (3) 6 + 8

と言う問題を解くプログラムを作って解いてみよう。って言えば楽しく解いてくれるはず。

f [] = []
f (x,y):zs = x + y:f zs

f [(2,3),(5,4),(6,8)]
= 2 + 3:f [(5,4),(6,8)]
= 5:f [(5,4),(6,8)]
= 5:5 + 4:f [(6,8)]
= 5:9:f [(6,8)]
= 5:9:6 + 8:f []
= 5:9:14:f []
= 5:9:14:[]
= [5,9,14]
2020/09/19(土) 00:00:14.74ID:QKolKnHG
>>21
自分が楽しいのと相手が楽しいのを混同するタイプか
23デフォルトの名無しさん
垢版 |
2020/09/19(土) 06:49:57.56ID:JrTIim4r
そうかもね。

でも、教育格差や今のプログラミング教育がメーカーの格好の餌食になっている現状に一石を投じる言語ではあるよ。
政府が本当に恒久的に小学生(の新入生?)にPCを行き渡らせ続けられるなら、必要無いかもだけど。

コロナで税金を大分使ったしね。
2020/09/19(土) 08:04:07.92ID:ndkIK1Zf
>>1
まずは、日本語をきちんと学んで
それから中学生に上がったら、Hello, I'm grad see you辺りから英語もだんだん勉強を。
2020/09/19(土) 08:08:18.92ID:ndkIK1Zf
もしかして、ネタスレにマジレスしちゃった?俺
2020/09/19(土) 11:41:39.14ID:ed5tyd+V
>>24
お前も中1から英語やりなおせよ低能w
2020/09/19(土) 13:21:44.00ID:Ke+xqhHz
Hello, I'm grad (to) see you.
28デフォルトの名無しさん
垢版 |
2020/09/19(土) 14:14:51.88ID:UH13Why+
これ思い出した


WareZ isn't soft.
WareZ is name of bad copy soft.
Do you understand?
You never come here.

あまりに簡単すぎる英語で書きました。
これで分かるかな?
馬鹿だからわかんないかもね

You is a big fool man.
Hahahaha.
2020/09/19(土) 16:43:58.37ID:Ke+xqhHz
WareZ isn't (a)soft.
WareZ is (the) name of (a) bad copy soft.
Do you understand?
You never come here.
You (are)a (total) fool(ish) man.
Hahahaha.
2020/09/19(土) 17:25:27.87ID:2HkJedVD
>>29
がんばって指摘してるんだろうけど無茶苦茶

とりあえずsoftwareのことをsoftとは英語では言わない
31デフォルトの名無しさん
垢版 |
2020/09/19(土) 18:33:00.44ID:/ZqQW4lo
>>30
頑張りを評価するだけ偉いな
32デフォルトの名無しさん
垢版 |
2020/09/20(日) 16:41:45.45ID:Ai6dHVB9
日本語
2020/09/21(月) 11:21:27.63ID:ZlQZfuJS
小学生はエロい
34デフォルトの名無しさん
垢版 |
2020/09/21(月) 21:25:33.10ID:cxCVzlZ/
議論にもなってないけど、割と本気でHaskellは授業で使うプログラミング言語にピッタリなんだけどな・・・。
>>21の例の通り、宿題をPCに解かせるプログラムを自分がPCになって解く事が出来るから、
PCに宿題を解かせる事だけが上手くなって算数は身に付かないって心配が無い。
(ほぼ数学なので、紙と鉛筆で実行過程をエミュレート出来る)

PCでしか実行出来ない他のプログラミング言語に対する大きなアドバンテージだと思うんだけど。
2020/09/21(月) 22:22:18.48ID:y+YY/hAY
まず手持ちのスマホで実行できないと納得しないよ
2020/09/22(火) 02:26:01.20ID:CP+6Jcr0
>>11
ご同輩 でもマシン語メインだからベーマガは1回だけ(不採用)
2020/09/22(火) 03:13:05.42ID:2kmwzB0g
>>34
そんな独りよがりな主張、議論にならなくて当然だろう。
メリットとしてあげられている点が無理矢理なこじつけに思えて全く共感できない。我田引水もいいところ。
2020/10/03(土) 05:16:22.19ID:TZMEpNzL
jsなら7行テトリスがスマホで遊べるかんな
2020/10/10(土) 09:01:52.22ID:qt6u2bFw
この国は終わってる。 かなり老害が進んでる。

中学校で使われているプログラミングの教科書を全部購入して比較
Jul 17, 2018
https://yandod.github.io/blog/2018/07/17/programming-textbook/#

中学校の技術の各社の教科書でしょうかいされているプログラミング言語の例。
共通しているのはBASICとC。
東京書籍はCOBOL、Java、JavaScript、
開隆堂はFORTLAN、
教育図書はPascalを挙げている。
40デフォルトの名無しさん
垢版 |
2020/10/18(日) 11:21:27.89ID:H1xH1BRx
elisp
lisp
2020/10/18(日) 11:28:37.00ID:CqLBM1Q2
Pythonこそオススメしたい。
文法は簡潔で分かりやすいし。
42デフォルトの名無しさん
垢版 |
2020/10/18(日) 12:19:22.62ID:vmWunLYe
>>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:51.59ID:vmWunLYe
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は何故か無い。
(まあ作れば良いんだけど)
2020/10/19(月) 20:33:09.80ID:ACTVJQSq
だいたい独善親父が自分の宗教を子供に強制するカタチになるんだよなぁ
巨人の悪口吹き込んで、大洋ホエールズを応援するように仕向けたり
邪悪なM$の野望を打ち砕くために、子供には真に自由なFreeBSD以外を与えないようにしたり

シンプルな古典言語でいいんだよ
2020/10/19(月) 22:11:20.12ID:qSr3w0qH
>シンプルな古典言語でいいんだよ
lispだな
2020/10/20(火) 10:25:31.31ID:qYYfNILy
Show you guts cool say what 最高だぜ
47デフォルトの名無しさん
垢版 |
2020/10/20(火) 10:39:02.86ID:pHiz9StD
>>45
forth
2020/10/20(火) 11:02:42.35ID:3k48bEYB
> だいたい独善親父が自分の宗教を子供に強制するカタチになるんだよなぁ

> FreeBSD以外を与えないようにしたり
49デフォルトの名無しさん
垢版 |
2020/10/20(火) 11:40:25.09ID:1v+j53eJ
>>44
それこそ数学で十分で、小学生なら>>19みたいに算数に再帰の概念加えるだけで良いんだけどね。(x,yを丸や四角に置き換える)
掛け算だけでも色々な視点から考察出来るし。参考に下は>>19の別視点。
後々、関数型言語や普通の言語との相関も見えて来る。
結局、目的の式を思い付くのが重要で、言語はそれを動かす手段に過ぎないと分かる。

数学(iは右下添字)
y
x × y = Σ xi = x1 + x2 + .. xy
i = 1

Haskell
x × y = sum [x |_ <- [1..y]]

Python
def mul(x,y):
a = 0
for i in range(1,y + 1):
a += x
return a
50デフォルトの名無しさん
垢版 |
2020/10/20(火) 11:52:55.92ID:1v+j53eJ
そもそも算数が教育の質が低下してるせいで掘り下げる事をしてないのがプログラミングなんてのが必須になった要因。
プログラミングも形骸化するのは目に見えてる。
2020/10/20(火) 12:08:05.44ID:y00O+Rim
小・中学生が学ぶべきは

日本語 >>> 算数 >>> 英語 >>> 数学 >>> コンピュータ/情報リテラシー >>>>>>>>>> プログラミング

小6だと学年トップクラスで賢い子じゃなければスクラッチのような簡単お遊び系を余暇の時間にやるので十分
52デフォルトの名無しさん
垢版 |
2020/10/20(火) 12:09:31.16ID:pHiz9StD
python
functools.reduce(operator.add, range(1, y+1))
2020/10/20(火) 12:15:41.01ID:3k48bEYB
>>50
教育の質って低下しているの?
2020/10/20(火) 12:55:14.98ID:dIM1eY4o
日本語書くのが下手なやつはプログラム書くのも下手
55デフォルトの名無しさん
垢版 |
2020/10/20(火) 13:05:08.13ID:1v+j53eJ
>>53
低下と言うか、受験やテスト目的の「やり方だけ教える」教育が続いて久しい。
プログラミングも算数も論理的思考を育む目的だが、それはやり方だけ教えるのでは身に付かない。
どうしてそう言うやり方なのか?を理解しないと暗記やコピペで終わる。

小数点同士の割り算で、割る数も割られる数も10倍100倍して商を出すが、余りはその後1/10,1/100して元に戻すのは何故か?
これを説明出来る教師が何割居るか。
本屋の参考書すらただの1冊も説明した本が無い。

AIに負けない子供を!と声だけ大きくて、実態は全然変わってない。
2020/10/20(火) 13:25:12.32ID:C+6cO9mm
>>54
判りますω

>>55
概ね同意
レスを投稿する