遊び tokidoki 仕事

数学と音楽と教育と遊び

| おしごと - きょういく - がくせい - ゼミ - イベント | すうがく - おんがく - 数理音楽 - DTM - かがく - scratch
| Art - photo - おきにー - Tips - ものもう - あれこれ | About - Top

Sigma2018の新年会!

絶滅危惧種として登録されていた数学同人 Sigmaは,ひょんな事で今年度は人数が集まっている.
f:id:okiraku894:20190127100927j:plain:w400,left
で,新年会が行われた.

f:id:okiraku894:20190127101109j:plain:w400,right
いや,メンバーホントは15人いるのだけど,バイトやら何やらで参加者こんな感じ.
f:id:okiraku894:20190127100936j:plain:w400,left
f:id:okiraku894:20190127101309j:plain:w400,right
f:id:okiraku894:20190127100736j:plain:w400,left

f:id:okiraku894:20190127101231j:plain:w400,right
サイドメニューとかもつけたので,結構腹がふくれた.


しかし,実質活動メンバーはこのところ少ない.
皆がともに熱くなる話題,活動がなかなか定まらないところに原因が有るのだろうな.

算数事始め(2)

シリーズにするつもりはなかったんだけど,また虱潰しに調べてみたので,報告.
tokidoki.hatenablog.jp

算数科研究ネタ探しを続けているが,調べるとこんな算数活動もあるらしい.

 □□+□□=□□
1,2,3,4,5,7全てを□に当てはめて,正しい式にしましょう.
(小学2年生向け)

ちょっと考えると例えば
 12+35=47
なんて出るわけだが,こういった繰り上がりのないパターンは桁の入れ替えが自由にできるので

\begin{gather*}
 12+35=47, 15+32=47, 32+15=47, 35+12=47,\\
 21+53=74, 23+51=74, 51+23=74, 53+21=74
\end{gather*}

2^3パターンが生まれる.そしてこれ以外には無さそうだ.

さて,こうなると他の6つの数で試すとどうなるか,が気になってくる(でしょ?).
探すと繰り上がりが有るパターンもある.例えば 1,2,3,4,5,8に変えると,

\begin{gather*}
14+38=52, 18+34=52, 34+18=52, 38+14=52,\\
15+28=43, 18+25=43, 25+18=43, 28+15=43
\end{gather*}

という具合で,今度は単なる入れ替えでない.というのも1の位での繰り上がりは許されるが,それをこのゲームのルール上10の位に持ってくるわけに行かないからだ.それでもそれを補完するように別の組み合わせで合計8パターンとなる.
ところが同じ繰り上がりが発生していても補完パターンが無いものも有る.例えば1,2,3,4,6,9だ.

\begin{gather*}
13+49=62,19+43=62,43+19=62,49+13=62
\end{gather*}

その一方で,12パターンある組み合わせもある.1,2,4,5,7,8を選ぶと,

\begin{gather*}
17+28=45, 18+27=45, 27+18=45, 28+17=45,\\
14+58=72, 18+54=72, 54+18=72, 58+14=72,\\
24+57=81, 27+54=81, 54+27=81, 57+24=81
\end{gather*}

となる.ところが,反対に全く何も作れない組み合わせもある.それが結構ある.
たとえば,1,2,3,4,5,6や1,2,3,5,6,8などなど.

さて,これをチマチマ探したのかというと,ご想像の通り,また10進BASICで先回りして調べた.
結果一覧が以下.要するに1から9の中から3つを選ばないので全部で{}_9C_3=84通りの数の組み合わせを全部調べれば良い.
先頭の(123456)などが使用する6つの数,その後は実際の解.

【パターン数=0 】つまり解が無いもの.28個.
\begin{align*}
&(456789),(356789),(345789),(345679),(345678),(246789),(245789),(245678),\\
&(234789),(234689),(234679),(234579),(234567),(156789),(135689),(134679),\\
&(134678),(134589),(134578),(126789),(125689),(124589),(123789),(123679),\\
&(123678),(123569),(123568),(123456).
\end{align*}

【パターン数=4】14個.
\begin{gather*}
(346789):37+49=86, 39+47=86, 47+39=86, 49+37=86,\\
(245679):26+49=75, 29+46=75, 46+29=75, 49+26=75,\\
(236789):28+39=67, 29+38=67, 38+29=67, 39+28=67,\\
(235689):25+68=93, 28+65=93, 65+28=93, 68+25=93,\\
(234569):25+39=64, 29+35=64, 35+29=64, 39+25=64,\\
(145689):15+69=84, 19+65=84, 65+19=84, 69+15=84,\\
(135679):17+39=56, 19+37=56, 37+19=56, 39+17=56,\\
(134689):14+69=83, 19+64=83, 64+19=83, 69+14=83,\\
(125678):15+67=82, 17+65=82, 65+17=82, 67+15=82,\\
(124569):16+29=45, 19+26=45, 26+19=45, 29+16=45,\\
(123579):13+59=72, 19+53=72, 53+19=72, 59+13=72,\\
(123489):32+49=81, 39+42=81, 42+39=81, 49+32=81,\\
(123478):23+48=71, 28+43=71, 43+28=71, 48+23=71,\\
(123469):13+49=62, 19+43=62, 43+19=62, 49+13=62.
\end{gather*}

【パターン数=8】40個.
\begin{align*}
(345689):&36+49=85, 36+58=94, 38+56=94, 39+46=85, \\
&46+39=85, 49+36=85, 56+38=94, 58+36=94,\\
(256789):&27+59=86, 27+68=95, 28+67=95, 29+57=86, \\
&57+29=86, 59+27=86, 67+28=95, 68+27=95,\\
(245689):&24+65=89, 25+64=89, 42+56=98, 46+52=98, \\
&52+46=98, 56+42=98, 64+25=89, 65+24=89,\\
(235789):&23+75=98, 25+73=98, 32+57=89, 37+52=89, \\
&52+37=89, 57+32=89, 73+25=98, 75+23=98,\\
(235679):&23+56=79, 26+53=79, 32+65=97, 35+62=97, \\
&53+26=79, 56+23=79, 62+35=97, 65+32=97,\\
(235678):&26+57=83, 27+38=65, 27+56=83, 28+37=65, \\
&37+28=65, 38+27=65, 56+27=83, 57+26=83,\\
(234678):&23+64=87, 24+63=87, 32+46=78, 36+42=78, \\
&42+36=78, 46+32=78, 63+24=87, 64+23=87,\\
(234589):&24+59=83, 29+54=83, 34+58=92, 38+54=92, \\
&54+29=83, 54+38=92, 58+34=92, 59+24=83,\\
(234578):&25+48=73, 28+45=73, 35+47=82, 37+45=82,\\
&45+28=73, 45+37=82, 47+35=82, 48+25=73,\\
(234568):&23+45=68, 25+43=68, 32+54=86, 34+52=86,\\
&43+25=68, 45+23=68, 52+34=86, 54+32=86,\\
(146789):&16+78=94, 18+49=67, 18+76=94, 19+48=67, \\
&48+19=67, 49+18=67, 76+18=94, 78+16=94,\\
(145789):&14+75=89, 15+74=89, 41+57=98, 47+51=98, \\
&51+47=98, 57+41=98, 74+15=89, 75+14=89,\\
(145679):&14+65=79, 15+64=79, 41+56=97, 46+51=97, \\
&51+46=97, 56+41=97, 64+15=79, 65+14=79,\\
(145678):&16+58=74, 17+48=65, 18+47=65, 18+56=74, \\
&47+18=65, 48+17=65, 56+18=74, 58+16=74,\\
(136789):&13+76=89, 16+73=89, 31+67=98, 37+61=98, \\
&61+37=98, 67+31=98, 73+16=89, 76+13=89,\\
(135789):&15+78=93, 18+39=57, 18+75=93, 19+38=57,\\
&38+19=57, 39+18=57, 75+18=93, 78+15=93,\\
(135678):&13+65=78, 15+63=78, 31+56=87, 36+51=87, \\
&51+36=87, 56+31=87, 63+15=78, 65+13=78,\\
(134789):&13+84=97, 14+83=97, 31+48=79, 38+41=79, \\
&41+38=79, 48+31=79, 83+14=97, 84+13=97,\\
(134579):&14+59=73, 19+54=73, 34+57=91, 37+54=91,\\
&54+19=73, 54+37=91, 57+34=91, 59+14=73,\\
(134569):&13+46=59, 16+43=59, 31+64=95, 34+61=95, \\
&43+16=59, 46+13=59, 61+34=95, 64+31=95,\\
(134567):&13+54=67, 14+53=67, 31+45=76, 35+41=76, \\
&41+35=76, 45+31=76, 53+14=67, 54+13=67,\\
(125789):&12+85=97, 15+82=97, 21+58=79, 28+51=79, \\
&51+28=79, 58+21=79, 82+15=97, 85+12=97,\\
(125679):&12+57=69, 17+52=69, 21+75=96, 25+71=96, \\
&52+17=69, 57+12=69, 71+25=96, 75+21=96,\\
(124789):&14+78=92, 18+29=47, 18+74=92, 19+28=47, \\
&28+19=47, 29+18=47, 74+18=92, 78+14=92,\\
(124689):&12+84=96, 14+82=96, 21+48=69, 28+41=69, \\
&41+28=69, 48+21=69, 82+14=96, 84+12=96,\\
(124679):&17+29=46, 19+27=46, 24+67=91, 27+19=46, \\
&27+64=91, 29+17=46, 64+27=91, 67+24=91,\\
(124678):&12+74=86, 14+72=86, 21+47=68, 27+41=68,\\
&41+27=68, 47+21=68, 72+14=86, 74+12=86,\\
(124579):&12+47=59, 17+42=59, 21+74=95, 24+71=95, \\
&42+17=59, 47+12=59, 71+24=95, 74+21=95,\\
(124568):&12+46=58, 16+42=58, 21+64=85, 24+61=85, \\
&42+16=58, 46+12=58, 61+24=85, 64+21=85,\\
(124567):&15+47=62, 17+45=62, 25+46=71, 26+45=71, \\
&45+17=62, 45+26=71, 46+25=71, 47+15=62,\\
(123689):&13+69=82, 19+63=82, 23+68=91, 28+63=91,\\
&63+19=82, 63+28=91, 68+23=91, 69+13=82,\\
(123589):&12+83=95, 13+82=95, 21+38=59, 28+31=59, \\
&31+28=59, 38+21=59, 82+13=95, 83+12=95,\\
(123578):&12+73=85, 13+72=85, 21+37=58, 27+31=58,\\
&31+27=58, 37+21=58, 72+13=85, 73+12=85,\\
(123567):&12+63=75, 13+62=75, 21+36=57, 26+31=57, \\
&31+26=57, 36+21=57, 62+13=75, 63+12=75,\\
(123479):&12+37=49, 17+32=49, 21+73=94, 23+71=94, \\
&32+17=49, 37+12=49, 71+23=94, 73+21=94,\\
(123468):&12+36=48, 16+32=48, 21+63=84, 23+61=84, \\
&32+16=48, 36+12=48, 61+23=84, 63+21=84,\\
(123467):&16+27=43, 17+26=43, 24+37=61, 26+17=43, \\
&27+16=43, 27+34=61, 34+27=61, 37+24=61,\\
(123459):&14+25=39, 15+24=39, 24+15=39, 25+14=39, \\
&41+52=93, 42+51=93, 51+42=93, 52+41=93,\\
(123458):&14+38=52, 15+28=43, 18+25=43, 18+34=52, \\
&25+18=43, 28+15=43, 34+18=52, 38+14=52,\\
(123457):&12+35=47, 15+32=47, 21+53=74, 23+51=74,\\
 &32+15=47, 35+12=47, 51+23=74, 53+21=74.
\end{align*}

【パターン数=12】2個.
\begin{align*}
(134568):&15+48=63, 16+38=54, 18+36=54, 18+45=63,\\
&35+46=81, 36+18=54, 36+45=81, 38+16=54,\\
&45+18=63, 45+36=81, 46+35=81, 48+15=63,\\
(124578):&14+58=72, 17+28=45, 18+27=45, 18+54=72,\\
&24+57=81, 27+18=45, 27+54=81, 28+17=45,\\
&54+18=72, 54+27=81, 57+24=81, 58+14=72.
\end{align*}

まぁ,まずはとにかくやってみることだ.

おっと,また整理されてないBASICソースを.

REM
REM [算数科研究ネタ]
REM 「6つの数で二桁足し算□□+□□=□□を作る」
REM Ver. 2019/01/04
REM

LET nums$="123456789"
FOR p=1 TO 9
   LET X$=nums$
   LET X$(p:p)=""
   FOR q=1 TO 8
      LET X0$=X$
      LET X0$(q:q)=""
      FOR r=1 TO 7
         LET X1$=X0$
         LET X1$(r:r)=""
         PRINT "For [";X1$;"]"
         LET LL=LEN(X1$)
         FOR i=1 TO LL
            LET D2$=X1$(i:i)
            LET X2$=X1$
            LET X2$(i:i)=""
            FOR j=1 TO LL-1
               LET D1$=X2$(j:j)
               LET X3$=X2$
               LET X3$(j:j)=""
               LET a=VAL(D2$&D1$)
               FOR k=1 TO LL-2
                  LET D4$=X3$(k:k)
                  LET X4$=X3$
                  LET X4$(k:k)=""
                  FOR l=1 TO LL-3
                     LET D3$=X4$(l:l)
                     LET X5$=X4$
                     LET X5$(l:l)=""
                     LET b=VAL(D4$&D3$)
                     IF a+b=VAL(X5$) THEN
                        PRINT USING"##+##=##":a,b,VAL(X5$)
                     ELSE
                        LET X5$=X5$(2:2)&X5$(1:1)
                        IF a+b=VAL(X5$) THEN
                           PRINT USING"##+##=##":a,b,VAL(X5$)
                        END if
                     END if
                  NEXT l
               NEXT k
            NEXT j
         NEXT i
         PRINT "-----------------------"
      NEXT r
   NEXT q
NEXT p
END

本当はすごい小学算数

本当はすごい小学算数

算数事始め

年末からどうも体の具合がおかしく,卒論の手直しが思うように進まない.
背中がゾクゾクするし風邪かと思うのだが,どうも花粉症的な症状に近い.
そういえばこのところ毎年正月前後に体の調子が悪くなる.
ようやく一息つけると,気持ちが油断するのかもしれない.

おまけに今年に限っては算数科研究ネタを急ピッチで作り上げねばならず,結構ピンチ.
で,年末に手に入れたネタ本が結構使えそう.
名門中学の算数入試問題をもとに数学とはなんぞや,を説いてくれる本だ.

本当はすごい小学算数

本当はすごい小学算数

何しろトビラの問題からして使えそうだったんで早速Amazonでポチった.

その第一章はとにかくやってみなはれ,という内容.
第1章「考える力」よりも大事な「やってみる力」
うん,もうこの15年ほど手の動かない学生を見ていていつも思うことだ.
つべこべ言わず,まずあれこれやってみなはれ,だ.
ついでにいうと,数学なんて本当は最初から授業やテキストで学ぶものなんかじゃない,あれこれやってみての「どうして」がそもそも無いと,お経を唱えるのとさして変わらない,と思う.

で,何はともあれ算数科研究ネタ作成に脅されながら,初めの問題をみる.

1□2□3□4□5=2□3□4□5□6
の□には×か+が入ります.
この式が正しくなるような×と+の入れ方を2通り見つけなさい.
(2008年 麻布中学入試)

さて,こういう問題,下手に数学慣れしていると何か一般法則を見つけようとしてかえって手が動かなくなるかもしれない.
けれど,これは小学生の問題,とにかくあれこれやって探せ,という単純な問題と思ったほうが早く答えが見るかる.

いや,学生にやらせる前にまず自分で探さなきゃ,なのだけど,もう頭がぐぁんぐぁん,背中もゾクゾクの状態なので,一つ答えを見つけたところで10進BASICに解かせることにした.
ズルい,の極みである.
もちろんついでなので問題を

連続する1,2,...,nと2,3,...,n+1の間に×か+を入れて成り立つ等式を探す.

にして,ただし,n<9,つまり一桁の数で収まるように限定して作ることにした.

まず
1□2=2□3と1□2□3=2□3□4
には解がなかった.

1□2□3□4=2□3□4□5
の解は
\begin{align*}
5&=1+2+3\times4=2\times3+4+5\\
14&=1\times2+3\times4=2+3+4+5\\
25&=1+2\times3\times4=2+3+4\times5
\end{align*}
の3つ.

1□2□3□4□5=2□3□4□5□6
の解は
\begin{align*}
20&=1+2+3\times4+5=2+3+4+5+6\\
25&=1\times2+3+4\times5=2+3\times4+5+6
\end{align*}
の2つ.

1□2□3□4□5□6=2□3□4□5□6□7
の解は
\begin{align*}
32&=1+2+3+4\times5+6=2+3\times4+5+6+7\\
32&=1\times2\times3+4\times5+6=2+3\times4+5+6+7\\
68&=1\times2+3\times4\times5+6=2\times3+4\times5+6\times7\\
39&=1\times2+3+4+5\times6=2\times3+4\times5+6+7
\end{align*}
の4つ.

1□2□3□4□5□6□7=2□3□4□5□6□7□8
の解は
\begin{align*}
40&=1+2\times3+4\times5+6+7=2+3\times4+5+6+7+8\\
76&=1+2+3\times4\times5+6+7=2\times3+4\times5+6\times7+8\\
76&=1+2+3\times4\times5+6+7=2+3+4+5+6+7\times8\\
75&=1\times2+3\times4\times5+6+7=2+3+4\times5+6\times7+8\\
47&=1+2+3+4+5\times6+7=2\times3+4\times5+6+7+8\\
46&=1\times2+3+4+5\times6+7=2+3+4\times5+6+7+8\\
47&=1\times2\times3+4+5\times6+7=2\times3+4\times5+6+7+8\\
69&=1+2\times3+4\times5+6\times7=2\times3\times4+5\times6+7+8\\
69&=1+2\times3+4\times5+6\times7=2+3\times4+5+6\times7+8
\end{align*}
の9つ.

そして
1□2□3□4□5□6□7□8=2□3□4□5□6□7□8□9
の解は19個らしい.
\begin{align*}
84&=1+2+3\times4\times5+6+7+8=2+3+4\times5+6\times7+8+9\\
55&=1+2+3+4+5\times6+7+8=2+3+4\times5+6+7+8+9\\
56&=1+2\times3+4+5\times6+7+8=2\times3+4\times5+6+7+8+9\\
55&=1\times2\times3+4+5\times6+7+8=2+3+4\times5+6+7+8+9\\
59&=1\times2+3\times4+5\times6+7+8=2\times3\times4+5+6+7+8+9\\
140&=1\times2+3+4\times5\times6+7+8=2\times3+4\times5+6\times7+8\times9\\
64&=1\times2+3+4+5+6\times7+8=2\times3+4+5\times6+7+8+9\\
78&=1+2\times3+4+5+6+7\times8=2\times3\times4+5\times6+7+8+9\\
78&=1+2\times3+4+5+6+7\times8=2+3\times4+5+6\times7+8+9\\
92&=1+2\times3\times4+5+6+7\times8=2+3\times4\times5+6+7+8+9\\
88&=1+2+3+4\times5+6+7\times8=2\times3\times4+5+6\times7+8+9\\
88&=1\times2\times3+4\times5+6+7\times8=2\times3\times4+5+6\times7+8+9\\
96&=1+2+3+4+5\times6+7\times8=2+3+4\times5+6+7\times8+9\\
97&=1+2\times3+4+5\times6+7\times8=2\times3+4\times5+6+7\times8+9\\
96&=1\times2\times3+4+5\times6+7\times8=2+3+4\times5+6+7\times8+9\\
100&=1\times2+3\times4+5\times6+7\times8=2\times3\times4+5+6+7\times8+9\\
100&=1\times2+3\times4+5\times6+7\times8=2\times3+4+5+6+7+8\times9\\
111&=1+2\times3\times4+5\times6+7\times8=2\times3+4\times5+6+7+8\times9\\
110&=1\times2\times3\times4+5\times6+7\times8=2+3+4\times5+6+7+8\times9
\end{align*}

最後に10進BAISCのソース.
行き当たりばったりで作ったので汎用性ゼロ.
そしてこういうのを作ってるときは頭が痛くない.

LET lim=5
INPUT  PROMPT "いくつの数で?(1,2,...,nと2,3,...,n+1)":lim

FOR k=0 TO 2^(lim-1)-1
   LET aa$="1"
   FOR i=0 TO lim-2
      IF bitand(k,2^i)<>0 THEN
         LET aa$=aa$&"*"&STR$(i+2)
      ELSE
         LET aa$=aa$&"+"&STR$(i+2)
      END IF
   NEXT i
   FOR l=0 TO 2^(lim-1)-1
      LET bb$="2"
      FOR i=0 TO lim-2
         IF bitand(l,2^i)<>0 THEN
            LET bb$=bb$&"*"&STR$(i+3)
         ELSE
            LET bb$=bb$&"+"&STR$(i+3)
         END IF
      NEXT i
      LET aa=calc(aa$)
      LET bb=calc(bb$)
      IF aa=bb THEN PRINT STR$(aa)&"="&aa$&"="&bb$
   NEXT l
NEXT k
FUNCTION calc(x$)
   DIM p$(1 TO 10)
   FOR i=1 TO 10
      LET p$(i)=""
   NEXT i
   LET pp=1
   LET i=2
   LET j=1
   DO
      IF X$(i:i)="+" THEN
         LET p$(pp)=X$(j:i-1)
         LET pp=pp+1
         LET j=i+1
      END IF
      LET i=i+1
   LOOP UNTIL i>LEN(X$)
   LET p$(pp)=X$(j:i-1)
   LET pp=1
   LET ans=0
   DO UNTIL P$(pp)=""
      LET Y$=P$(pp)
      LET Z=1
      DO
         LET z=z*VAL(Y$(1:1))
         LET Y$(1:2)=""
      LOOP UNTIL Y$=""
      LET ans=ans+z
      LET pp=pp+1
   LOOP 
   LET calc = ans
END FUNCTION
END

Factorization!

久しぶりにScratch作品紹介.
素因数分解をビジュアルに表現するってのがその筋の人たちのちょっとしたブームになったことがあった.
始まりはここかな↓
mathlesstraveled.com
JavaScriptでアニメーションしてるのが例えば↓
Animated Factorization Diagrams – Data Pointed

で,そういう感じのが作りたくなってScratchで作った↓
このgifアニメーションでは300までだけど,実際にはいくらでも進む.
f:id:okiraku894:20181214233924g:plain
普通の素因数分解とはちょっと変えて2ベキは4ベキ部分と2に分けておくほうがビジュアル的には面白くなる.

そしてScratch本体はこちら↓(多分実行画面にはならないけど)