NOT回路(ゲート)、AND回路、OR回路を組み合わせた設計、論理回路の問題の解き方、考え方~ 高校『情報 Ⅰ 』

今日は久々に、高校の必修科目『情報 I 』の記事を書いてみよう。使うのは東京書籍のややレベルの高い教科書『情報 I  Step Forward!』(2022年・令和4年)。内容は、論理回路。

  

教科書の普通の説明は2ページだけで、ごく簡単な知識だけ書いてるけど、章末にはやや難しい問題を掲載してた。電子回路や論理学の知識があればすぐ解けるけど、普通の高校生だと苦戦しそうな問いが入ってる。正月明けの共通テストで、どの程度の問題が出るのかは読みにくい。

   

ちなみに、ここでの過去記事は、公開順に次の3本。1本目の画像の圧縮が最も読まれてる。他にプログラミングの記事も色々とアップ済み。

        

 デジタル画像の可逆圧縮、「ランレングス(連長)圧縮」の簡単な具体例と説明、圧縮率の計算~高校『情報Ⅰ』

 アナログの音のデジタル化(標本化=サンプリング、量子化、符号化)~高校『情報Ⅰ』(新必修科目)

 2進法の計算、直接的な減法(引き算)と、コンピューター内部で「2の補数」を用いる減算 ~ 高校『情報Ⅰ』

    

  

     ☆   ☆   ☆

では、教科書3章の章末問題4を解いてみよう。ただし、元の問題のままだと設定的に分かりにくいし長いので、以下では分かりやすく書き直してある。

   

1と0を反転させるNOT回路、入力が1と1の時だけ1を出力するAND回路、入力が0と0の時だけ0を出力するOR回路を、次のように組み合わせた論理回路を考える。ちなみに元の問題では、それぞれP、Q、Rと名付けられた謎の装置になってる。

     

241102a

   

(1) 入力が(X1,X2)=(0,1),(1,0),(1,1)の時の出力Yを求めよ。

   

241102b

  

知識があれば、これはXORゲートとか呼ばれる有名な基本回路だと一目で分かるから、答も計算不要ですぐ分かる。XORとは、イクスクルーシヴ・オア(排他的選言)。2つの入力が両立する時(どちらも1の時)には、出力が0になってしまう特殊なOR回路ということ。

  

参考までに、出力を表す論理式を書いとこう。

  

 Y=(X1 AND (NOT X2))OR((NOT X1) AND X2)

  =(X1 ∧ ¬X2)∨(¬X1 ∧ X2)

       

以下では、普通に回路図に記入しながら計算してみる。各回路ごとに、入力と出力をきっちり書いていけばよい。まず上図より、(X1,X2)=(0,1)の時、Y=1。

    

241102c

  

次に、上図より、(X1,X2)=(1,0)の時、Y=1。

   

241102d

   

最後に、上図より、(X1,X2)=(1,1)の時、Y=0。

   

なお、論理式と真理値表の知識があれば、手作業で表計算することもできるけど、教科書に書いてないので、ここでも省くことにする。そもそも、知識があれば、計算不要ですぐ答を書けてしまう。

     

    

    ☆   ☆   ☆

(2) 下図の回路の点線で囲まれた部分に、3種の回路を2つ書き加えて、(1)と同じ出力の回路を構成せよ。

       

241102e

   

これも、知識があれば一目で分かってしまう。先ほど触れたXORゲートの別の形で、こちらも有名なのだ。ORに似てるけど、AND(両立)はダメ、という意味の式。

    

 Y=(X1 OR X2)ANDNOT(X1 AND X2)) 

   

だから、上図のAND回路のすぐ右側にNOT回路を入れて、そのまた右側にAND回路を入れればよい。

   

ただ、知識がないと、単なるカンで見つけ出すか、場合分けして全て調べることになる。以下では、全て調べてみよう。

   

   

     ☆   ☆   ☆

241102f

   

まず、(X1,X2)=(0,0)の時、点線内への入力は(0,0)で、出力は0。上図の青い丸印に注目。

   

241102g

   

 (X1,X2)=(0,1)の時、点線内への入力は(1,0)で、出力は1

 (X1,X2)=(1,0)の時も同様に、 点線内への入力は(1,0)で、出力は1。

    

241102h

    

 (X1,X2)=(1,1)の時、点線内への入力は(1,1)で、出力は0

    

   

     ☆   ☆   ☆

さて、点線内の2つの回路は、以下の6通りの組み合わせが考えられる。図の左半分は無視して、点線内の入力と出力を調べると、5通り目までは全て不適。最後の6通り目だけが正しいことが分かる。

   

241102i

   

241102j

   

241102k

   

241102l

    

241102m

    

241102n

    

こんな面倒なチェック作業を試験場で時間内に行うのは難しいはずだけど、高校や塾・予備校、参考書でどう教えてるのかは不明。ちなみに教科書には、最後の答の図が書いてあるだけで、全く説明なし。

    

現実的には、もし共通テストで出題するのなら、もう少しヒントを付ける所だと思う。例えば、2つの回路の内、1つは教えて、残り1つは選択肢の中から選ぶとか。

     

ともあれ、今日のところはこの辺で。。☆彡

    

     (計 1839字)

| | | コメント (0)

ps5.js Web Editor(Processing)のプログラミングでお絵描き、アニメーション作成~ 高校教科書『情報 II 』(東京書籍)

しばらく、プログラミング関連のブログ記事を書いてなかったから、久々に軽く書いてみよう。去年(2023年)発売の新しい高校教科書『情報 II 』(東京書籍)。まだ、必修科目の『情報 I 』も『Python(パイソン)入門』も少ししか見てないけど、気分転換ということで。

    

240822a

   

必修と違って、教科書が薄いけど、中身は非常に実用的で多様。「幕の内弁当」的に、色んな話を少しずつ取り入れてる。真面目に扱うと、授業時間は全く足りないはず。自主学習に任せるとか、ごく一部に限定するとか、高校の先生の選択と工夫がポイントになる。

   

240822b

    

今回、最初に私の目に留まったのは、実習編2章「コンテンツ」の第05節、「プログラムで絵を描こう」という項目。プログラムというより、ウェブ上のアプリの使い方を学ぶといった感じが強い。ただ、プログラミングの基礎知識と英語力を少し持ってないと、意味も分からなくて、入力しにくいとは思う。

   

   

     ☆   ☆   ☆

240822c

   

いきなり、「準備するもの p5.jp Web Editor Processing(プロセッシング)」と書かれてる。どちらも聞いたこともない名前だから、英語版ウィキペディアで検索。

   

240822d

    

どうも、今現在だと、プロセッシングという描画サービスの関連プロジェクトの1つが、「p5.js」らしい。js は、JavaScript の省略。ウェブ版が、「p5.js Web Editor」ということか。この名前だけでも、初心者にはかなり敷居が高い。

    

240522e

   

   

     ☆   ☆   ☆

240822f

   

とにかく、検索するとすぐに見つかって、いきなり上のような画面が表示される。あらかじめ、この7行が書かれてるのだ。後はこれをアレンジすればいいらしいけど、後でサンプルを見ると、ものすごく複雑で長いプログラムが示されてた。画面は日本語にも対応してるけど、ここでは基本設定の通り、英語を利用。

    

まず setup(セットアップ)の createCanvas で、お絵描きするキャンバスの大きさを決める。ここでは教科書より少し小さい、400×400ピクセルにしてみた。ちなみに私の端末は、大きいタブレット。新iPad Pro 12.9インチを横にして使用。「ほぼ」問題は無かった(後述)。

  

上図の6行目の「background(220)」は、何も書かれてない背景のことだと想像。ここを色々と書き換えて、簡単な幾何学的アニメーションを作って行く。以下、教科書の記述の流れに沿った実験。

  

240822g

   

まず、6行目を「ellipse(random(400),random(400),50,50);」と書き換える。「楕円を描いてください。書き始めの(中心の?)x座標とy座標は、400ピクセルからランダムに選択。楕円の幅と高さは50ピクセル」。幅と高さを同じにしてるから、楕円というより、普通の円。

   

左上の実行ボタンをタップ(クリック)すると、画面右側の「Preview」のキャンバスに高速でアニメーションが描き出された。以下は、動画からの静止画キャプチャー3枚。動きはかなり速いけど、おそらくスピード調節も出来ると思う。

      

240822h

    

240822i

   

240822j

   

   

    ☆   ☆   ☆ 

240822k

   

記念すべき最初の作品をファイル保存しようとしたら、サインインしろとか表示が出て来たから、登録してログイン。教科書の初めの方に使ってるくらいだから、たぶん信用していいと思う(自己責任)。今まで、プログラミング関連でのトラブルは何もない。というか、正確には、何も感じない。見えない裏側で情報がどう流れてるのかは不明。

    

240822l

   

何もしなくても自動的にファイル名が付いてる。ダウンロードしたzipファイルを解凍して開こうとしたら、全く関係ない紀伊國屋のアプリ、Kinoppy が開いてしまった♪ 知らない間に、この種類のファイルが紀伊國屋アプリに関連づけられてるらしい。

   

ファイルのアイコンを長押しして、ポップアップ・メニューから新しいウインドウを開くと、下のような長いプログラムが出て来たけど、動画は見れなかった。長過ぎるからなのか、表示もスクロールもかなり重い。

    

240822m

 

      

     ☆   ☆   ☆

240822n

    

続いて、「fill(255,0,0,80);」と挿入して、透明度80の赤色(R)にする。さらに、「noStroke();」と挿入して、円の枠(縁取り)を無しにする。単純な赤、緑(G)、青(B)以外の色だと、その色が3つ組の数字で何になるのか、探す必要がある。ここでは、色のパレットみたいなものは表示されなかった。

     

240822o

   

240822p

    

    

今度は、透明度95の緑(0,255,0,95)に色を変えて、楕円の中心をマウス(タブレットだから私の指)に合わせて動かすようにしてみる。中心のX座標とY座標の入力箇所に、mouseX,mouseY と入力。

    

240822q

   

すると、確かに私の指の動きに合わせて円が次々と描かれたけど、反応が早過ぎて、上手くお絵描きできなかった。タブレットだから、指を動かすと画面まで上下左右に動いてしまうという問題もある。ゆっくり「TEN」と描こうとしても、大量の円が表示されてつながるから、単なる太線の文字みたいになってしまった。

     

240822r

   

    

     ☆   ☆   ☆

240822s

   

最後は、まず色をランダムに設定。「fill(random(255),・・・」。さらに、円の幅と高さもランダムに。

  

ただし、同じ幅と高さを保ったままにしたいから、変数Xをまず設定して、それを50以下でランダムに変化させる。「var x; x=random(50); ellipse(・・・・・・,x,x)」。

    

240822t

    

240822u

   

本当は、私の好きな色だけで変化させたいけど、まだその方法までは分からない。

   

とりあえず、今日のところはこの辺で。。☆彡

   

    (計 2297字)

| | | コメント (0)

2進法の計算、直接的な減法(引き算)と、コンピューター内部で「2の補数」を用いる減算 ~ 高校『情報Ⅰ』

1年半ぶりに、高校の新必修科目『情報 I 』の教科書(東京書籍)で記事を書いてみよう。プログラミング記事は別にすると、今まで2本だけ記事をアップ。2本目には地味にアクセスが入り続けてる。相対的にきっちりしたデジタル計算の方が好まれるということか。あるいは、高校のテストに出やすいとか。

     

 アナログの音のデジタル化(標本化=サンプリング、量子化、符号化)~高校『情報Ⅰ』(新必修科目)

 デジタル画像の可逆圧縮、「ランレングス(連長)圧縮」の簡単な具体例と説明、圧縮率の計算~高校『情報Ⅰ』

    

今日ここで扱うのは、正直言うと、私が今までなるべくスルーしてた「2の補数」の話。2進数の引き算をコンピューターが行う時、直接の引き算ではなくて、まず引く数に対する「2の補数」を求めて、引かれる数に足して、最後に「桁上がり」を削除するらしい。

  

この話を最初に聞いたのはかなり前のことで、ずいぶん回りくどい方法だなと感じてしまった。引き算1回を、3回の演算に分けて処理することになる。今でも、面倒な手続きのデメリットに対してメリットがどれだけあるのか、人間の私としてはよく分からない。

   

とはいえ、高校の必修科目の教科書で、計算の基本として説明されてるので、試しに学校教育の流れに乗ってみよう。教科書p.38~p.39の内容。

   

   

    ☆   ☆   ☆

まずは、2進数の足し算の確認から。例題1①。下線の入力が出来ないので、代わりに色を変える。

   

ポイントはただ1つ。「1+1=10」。つまり、1と1を足す時だけ、1が上の位に繰り上がる。ちなみに、特に何も書かなければ2進数を表すことにする。

       

   0101

+) 1001

   1110

   

この計算は、右端(2の0乗の位)からその左隣(2の1乗の位)へと、繰り上がりが1回あるだけだから、非常に簡単。

   

  

    ☆   ☆   ☆

続いて、直接的な減法(引き算)。足し算は昔から普通にある話だが、引き算を前面に出すのは目新しいことのような気がする。

  

例題1②。ポイントはただ1つ。

0-1=1 ただし上の位(左の桁)から1、借りる」。

   

   1010 

-) 0110

   0100

   

答の最上位(左端)の0を書いてるのは、この後、全体の桁数や左端が重要な意味を持って来るから。例えば、左端の0は「正(+、プラス)」の意味にもなる。

   

もう1問、やってみよう。問題3②。教科書では、2の補数を用いて計算することになってるが、ここではまず普通に引き算してみる。

  

   1100 

-) 1001

   0011

   

この計算では、まず右端で、0-1=1となって、引かれる数の左隣の桁から1借りる。ところが左隣は0だから、そのまた左隣から借りて来て、結局、100-1=11、と計算することになる。

  

そうではなく、「0から1借りるから、右端から2番目はまず-1になる。さらに、-1-0=1で、上の桁から1借りて・・」などと考えることも可能だが、流石に不自然すぎて間違えやすいし、分かりにくいだろう。

   

    

    ☆   ☆   ☆

一方、コンピューターの内部では、引き算は、「2の補数」を用いて足し算にすると言われてる。具体的な問題でやってみよう。

  

まず、上の例題1②の引き算。1010-0110=0100

    

引く数0110に対して、「補数とは、ある自然数に足して桁が1つ上がる数のうち、最も小さな数のこと」。2進法だと、2の補数とも呼ばれる。

  

この説明は分かりにくいので、2進法の場合の簡単な説明も載ってた。「補数は2進法の数値の0と1を反転させた数に1を足すことで機械的に求められる」。「2の4乗-元の数」という数学的説明と比べても、反転+1の方が実用的だと思う。

   

上の問題の場合、(0110の補数)=1001+1=1010。要するに、10000-0110を表してる。(2の5乗)-(元の式の引く数)。

    

これを用いると、元の引き算は次のように処理できる。ある数を引く代わりに、その数の補数を足して、10000を引く(4桁の引き算の場合)。

   

 1010-0110

=1010+(10000-0110)-10000

=1010+(2の補数)-10000

=1010+1010-10000

0100

  

確かに、直接の引き算と同じ答が出た。

   

    

    ☆   ☆   ☆

続いて、問題3②も補数で計算し直してみる。

   

 1100-1001

=1100+(10000-1001)-10000

=1100+(2の補数)-10000

=1100+0111-10000

0011

 

これも同じ答になった。

   

    

     ☆   ☆   ☆

では最後に、答がマイナスになる引き算について。教科書には載ってなかったので、手元のデジタル関連本の問題を少し改変して考えてみよう。1010-1101。

   

直接の引き算だと、最初に少し変形して、引きやすくする。負の数が登場する中学1年くらいで使ってた変形だと思う。

    

  1010-1101

= -(1101-1010)

= -0011

   

マイナスの符号を除くと、元の引く数1101の補数になってるが、これは単なる偶然。ちなみに、上の計算を十進数で書き直すと、10-13=-3ということ。

     

一方、2の補数を用いて引き算すると、

  1010-1101

= 1010+(10000-1101)-10000

= 1010+(2の補数)-10000

= 1010+0011-10000

= 1101-10000

= -(10000-1101)

= -0011

   

答は一致するが、やはり人間的にはメリットを感じないどころか、短所・欠点の方が目立つ気もする。

   

   

     ☆   ☆   ☆

案外、コンピューターの設計図である論理回路を2種類、書いて比較すれば、2の補数を用いた引き算の長所が見えて来るのかも知れない。

    

それは図の作成も含めてかなり面倒な作業になってしまうから、先送りにしとこう。とりあえず、今日の所はこの辺で。。☆彡

         

    (計 2356字)

| | | コメント (0)

デジタル画像の無駄な1ビットに、ひそかに文字を埋め込む暗号の作り方~2024年共通テスト・情報関係基礎・第1問・問3

ちょっとした個人的事情で、私の手元には今、バッテリーが切れそうな端末しかない。おまけに、充電もできない。

  

電源の節約のために暗い画面で慌てて入力してるが、自分では、文字の認識はハッキリ出来てる。これは、すぐそばにいる私の目と神経と脳の働きで、細かい濃淡を識別してるからだ。少し離れた位置にいる人がこの画面を見ても、全体が真っ暗で分からないだろう。

  

一方、デジタル画像にひそかに文字を埋め込んだ場合、端末と(特殊な)アプリと知識・技術があれば、画像の微細な変化を読み取ることで、文字が認識できる。それに対して、普通の人がその画像を見れば、単なる普通の画像にしか見えない。密かな文字の埋め込みなど、考えもしないはず。

   

今年の共通テストの情報関係基礎は、そんなマニアックな面白ネタを小問に埋め込んでた。このネタの埋め込みに気付く人も、全国で僅かだと思う(数千人~数百人)。作成者の目立たないこだわりに敬意を表しつつ、急いで記事をアップしよう。テストの問題はいつものように、河合塾HPを経由して、大学入試センターからお借りした。

  

  

      ☆   ☆   ☆

240214a

     

240214b 

     

240214c

  

E0の列内の最大値は、右上を見ればよい。16進表記で、F0 ・・・セの答(選択肢4) 

  

Fは10進表記だと15を表す文字で、右から2桁目にあるから、

10進表記だとF0は、15×16+0=240。

一方、00は10進表記で0。

よって、最大値と最小値の差は10進表記で、240-0=240 ・・・ソタチの答

  

   

     ☆   ☆   ☆

240214d

   

E0の行のマス目の数値は、上位4ビットが16進表記でE ・・・ツの答(選択肢4)

   

その行(上位がE)の5つのマス目を見ると、ほとんど同じ色が横に並んだように見える。

一方、右端の列(下位が0)の5つのマス目を見ると、上下方向で大幅に色が変化してるように見える。

  

このように、図1の画像においては、「下位のビットの変化よりも上位のビット」の変化の方が、画像の見た目に与える影響が大きい。 ・・・テの答(選択肢1)

   

   

    ☆   ☆   ☆

この性質を利用すると、特定のビットの数値を意図的に操作することで、元画像の見た目に大きな影響を与えずに、新たなデータを付加することができる。

   

その分、画像の見た目のデータは減ってることになるが、人間の目では識別しにくい。

   

16進表記では分かりにくいので、2進表記で考えてみる。各マス目(つまり画素)の色が8ビット(8桁)で表されていて、大きい順か小さい順に濃淡が決められているなら、最も下位(右端)の1ビット(1桁)は、画像の見た目とほとんど関係ない。だから、右端は文字データの埋め込みに使うことが出来る。

  

例えば、左のマス目から右に向かって順に、

 1010101  0111010  1110011  0010010

と並んでる場合、それぞれの右端のビット(桁)だけ見れば、 0110 となる。

   

画像のサイズが200×200=40000画素の場合、1画素あたり1ビットで、合計40000ビットの文字情報を埋め込みことが出来る。

  

日本語の全角文字のように、2バイト(=16ビット)で1文字を表現するのなら、

40000ビットで2500文字分の情報を埋め込むことが可能。 ・・・トの答(選択肢1)

(40000÷16=2500)

   

  

もう少し分かりやすく書きたい所だが、バッテリーは切れそうだし、アップルペンシルも手元にないので、このくらいで妥協しとこう。来年から共通テストに登場する必修科目「情報 I 」の問題にも期待しつつ、今日はそろそろこの辺で。。☆彡

    

     (計 1479字)

| | | コメント (0)

宇宙船に乗った異星人はどこから地球に来たのか?、出身星を見分ける効率的な質問方法~2024年共通テスト・情報関係基礎・第2問

3週間遅れになってしまったが、2024年・共通テストの『情報関係基礎』についても記事を書いとこう。いつものように、国語と数学についてはすぐに記事をアップしてある。

   

公表データによると、受験者数は僅か124人。他にも、英語以外の外国語とか地学とか、奇妙なほど受験者が少ない科目は、問題作成者が気の毒になる。といっても、作成者の報酬や待遇に関しては、他の科目との差は無いだろう(未確認)。

   

来年、鳴り物入りの必修科目『情報 I 』が新たに登場するが、どの程度の受験者数になるのか、まだ予想しにくい。教科書を見る限り、科目内容は興味深くて、現代的かつ実用的だと思うが、大学側の反応はまだあまり好意的ではないように見える。これでは高校の授業でも軽視されてしまうから、先に大学が態度を変えるべきだろう。そうすれば、高校も受験生も変わるはず。

    

   

     ☆   ☆   ☆

では、本題に入ろう。今年は第1問の方が興味深い感もあるが、やはり特殊な問題を出す第2問に注目。要するに、統計学的なデータ分析で、理論的・計算的には簡単だが、変数やパラメーターが多くて文章が長いのがポイント。問題はいつものように、河合塾HPを経由して、大学入試センターから拝借した。

  

240203a

      

240203b

     

240203c

      

240203d

   

  

問1 上図の質問方法の場合、トウ星人には1人あたり1回、リク星人には1人あたり回質問する。・・・アの答

「トウ星人ですか?」、「カイ星人ですか?」、「ホク星人ですか?」で3回。すべて「いいえ」がリク星人。

  

宇宙船Aの人にたずねたときは、トウ星人3人に合わせて3回、カイ星人2人に合わせて回質問。・・・イの答

カイ星人1人あたり2回の質問(トウ星人ですか?、カイ星人ですか?)だから。

10人全員だと質問は22回。 1×3+2×2+3×(1+4)=22

   

宇宙船Cの10人への質問回数は、1×1+2×3+3×(2+4)=25回。・・・ウエの答

  

次に、こうした「順次法」の質問の順番を変える。1番目がトウ星人ですか?、2番目がリク星人ですか?、3番目がホク星人ですか?とたずねる場合、最初の順番と比べると、カイ星人1人あたりに質問する回数は1回多い・・・オの答(選択肢4)

最初の順番だと2回、新たな順番だと3回だから。

   

表1の宇宙船Aの10人への合計回数は、 1×3+2×4+3×(2+1)=20回だから、

2回少ない・・・カの答(選択肢1)

   

   

    ☆   ☆   ☆

240203e

   

240203f

   

  

問2 グループ法で表1の宇宙船Aの人に尋ねると、1人あたり常に2回だから、合計で20回。・・・キクの答

  

  

    ☆   ☆   ☆

240203g

   

    

問2(続き) 順次法で合計回数を最小にするには、出身者が多い星から順にたずねる。

宇宙船Aだと、リク星人ですか?、トウ星人ですか?、とたずねればよいから、

 1×4+2×3+3×(2+1)=19回。・・・ケコの答

   

こうした最小にするたずね方だと、5隻のうち、合計が最小になるのは宇宙船D・・・サの答(選択肢3)

要するに、10人の出身星が最も偏っている宇宙船ということ。 

 1×7+2×3=13回

   

さらに、順次法とグループ法の使い分けを考える。グループ法だと、1人あたり2回。

順次法だと、出身者が最も多い星は1回(つまりマイナス1回)になるが、出身者が3番目に多い星と最も少ない星では3回(つまりプラス1回)になってしまう。

よって、出身者が3番目に多い星の人数と出身者が最も少ない星の人数の合計が、出身者が最も多い星の人数より多い場合は、グループ法の方が効率的。・・・シスセの答(選択肢23(順不同)、選択肢0)

   

    

     ☆   ☆   ☆

240203h

      

240203i

   

  

問3 上の「二段法」の「前手順」で宇宙船Aを対象としたら、

X星はリク星(最も多い4人)、Y星はトウ星(2番目の3人)となる。・・・ソ、タの答(選択肢3、0)

   

   

    ☆   ☆   ☆

240203j

   

問3(続き) 上の表2において、二段法の前手順で宇宙船Bを対象とした場合、後手順のX星人はカイ星人だから、人数は合計で、2+3+7+6=18人。・・・チツの答

   

前手順で宇宙船B・D・Eを対象とした場合に合計回数が少ないのは、X星がカイ星となった(つまり最も人数の多い星となった)ことによる。・・・テの答(選択肢0)

    

前手順の対象がAの時とCの時を比べると、後手順のX星人は同数だが、合計回数はCの方が遥かに少ない。これは、後手順でY星人が多いから。言い換えると、Cの後手順でその他が少なかったことによる。・・・トの答(選択肢3)

  

Cの後手順でY星人が多いのは、Y星がカイ星となったため。・・・ナの答(選択肢2

    

BよりEの方が合計回数が1だけ少ないのは、Eの方が後手順のX星人が1人だけ多いから。

   

ところで、(Bの後手順のX星人、18人)=(X星人(=カイ星人)全25人)-(Bの前手順のX星人7人

     (Eの後手順のX星人、19人)=(同上、25人)-(Eの前手順のX星人6人

   

だから、言い換えると、Eの方が前手順でX星人が少なかったから。・・・ニの答(選択肢1)

    

    

     ☆   ☆   ☆

最後の設問は、消去法でもただ1つの選択肢に絞れるとはいえ、消去に時間を取られるし、いろんな意味でかなり分かりにくい。問題の文章自体、設問の流れ、解答群にいきなり「前手順」の人数に関する選択肢を並べている点。

    

最後に無理やり、ひねり過ぎた問いを設定して、トップクラスの受験生の差をつけることを狙った感じか。情報関係基礎の最高点が98点なのは、上のニで間違えたのではないかと想像する。

   

とはいえ、第2問の全体を見ると、風変わりな形で基本的な情報処理能力を求める労作ではある。というわけで、今日はそろそろこの辺で。。☆彡

    

     (計 2297字)

| | | コメント (0)

対話型AI「ChatGPT」(有料最新モデルGPT-4)の使用例、自然数パズル「ナンスケ」の簡単な問題を解かせると・・

サブスク(有料の有期契約)を好まない私が、珍しくあっさり飛びついたのが、対話型AI「ChatGPT」(チャット・ジーピーティー)。

   

去年(2022年)の暮れから話題になってるのは知ってたけど、まだ性能が低そうだなと思ってスルーしてた。ところが先月(2023年3月)、最新モデルGPT-4が公開されて、かなり評判が良かったので、少し様子見した後、有料サービス「PLUS」を契約。

   

正直、1ヶ月20ドルは高い。今のドル円の為替レートで、2700円! まあ、しかし、マニアック・ブロガーとしても、社会人としても、知らないでは済まない高性能AI。必要経費として我慢することにした。

     

今のところの予定では、数ヶ月使った後に一旦、解約。年末ごろに噂されてる新モデルが発表されたら、再契約するつもり。

  

   

      ☆     ☆     ☆

230423o

   

今現在は知らないけど、私が契約した時は、英語の説明。Upgrade plan(アップグレード・プラン)は、USD $20/mo。毎月20米ドル。サーバーの負荷が高い時も使えるし、レスポンス(反応)が速いし、新モデルを使えると書いてある。まあ、半ば、最新の興味深い研究への寄付。

     

230423f

   

上が有料サービス「ChatGPTプラス」のホーム画面。デフォルトのモデルは、1つ前のGPT-3.5。自動的に、無料の古いモデルを勧めて来る♪

     

230423g

  

ホーム画面の左側には、新しいチャット(対話)を始めるボタンやログアウト用のボタンの他に、私が過去、行った対話のフォルダが並んでる。個人情報と共に、すべて記憶されてるんだろうから、ちょっと怖いのも事実。相手は、マンガか映画かSF小説みたいなAIだ。

    

230423h

   

無料の標準モデルGPT-3.5の性能は、Reasoning(推論、理由付け)が3、スピードが5、正確さが2。要するに、速いけどイマイチ。

    

230423i

   

最新モデルGPT-4は、推論・理由付けが5で、スピードが2、正確さが4。遅いけど高性能だと。私がここまで使った印象だと、4、3、3くらいだ(個人の感想♪)。

    

遅くはないけど、よく間違える。一度、間違えると、指摘してもヒントを与えても、しばらく間違え続けるのだ。特に、最大の売りのはずの推論・論理的思考能力がまだまだだと思う。イメージ的には、一番強い分野のような気もするのに、意外な実状だ。条件や情報が増えると(10以上くらい?)、明らかに混乱が生じてる。

    

       

      ☆     ☆     ☆

さて、差し当たり、今日の記事で紹介するのは、パズル「ナンスケ」の簡単な例題を解かせた様子。たまたま昨日、朝日新聞・別刷beに掲載されてたのだ。

    

ナンスケとは、ナンバー・スケルトン(数の骨組み)の略。数ケタの自然数の組合せで、マス目の空欄が骨組みのように出来てて、そこに与えられた候補の数を入れて行く。

    

230423a

    

上は、単なる説明用の例題。候補の数は、47、61、176、646、711、744、1766、7466。すべて1回ずつ用いる。

   

まず、先日のドラマ・レビューでも使用したHI(人間知能)、ChatTENで解いてみよう♪ 推論4、スピード2、正確性4くらいの性能か。

    

230423b

    

まず、4ケタの数は2つとも、後ろの2ケタが66だから、それを記入。ポイントは、共通点への注目・利用。

    

230423c

   

右上から、646、61、176と、順に3つの数が確定する。桁数と候補の数から考えて、これしかない。

    

230423d

    

左から下側あたりは、711と1766に決定する。もし下側の4ケタが7466だったら、その左端の7とつながる左側の縦の3ケタが見つからないから、ダメなのだ。

     

230423e

   

残りはもう、4ケタ、3ケタ、2ケタの数が1つずつだから、自動的に空欄が埋まる。すべて完了。

    

ちなみに、ナンスケについては過去、10本の解説記事をアップしてある。最新の記事は次の通り。

  

 パズル「ナンスケ」の解き方、考え方10~難易度4、ニコリ作、朝日be、23年2月25日

    

       

      ☆     ☆     ☆

で、いよいよChatGPTの出番。私としては、まず例題で練習した後、昨日の朝日の問題(難易度2のやさしいタイプ)をヒント付きで解かせるつもりだった。

    

ところが、例題で早くも大苦戦になってしまったのだ。私が文章で入力した問題は、こんな感じ。まだ画像入力は使えないけど、こう書けば、十分に数を決定できるはず。一応、相手に気を使って、私が普段あまり使わない半角の英字を使用。いつもなら、見やすい全角の英字で入力する所。

   

230423k

  

「自然数が8コあります。aとeは4桁。b,d,f,hは3桁。cとgは2桁。aの右端の数字は、bの左端の数字。・・・」。

    

標準モデルのGPT-3.5は、何度か試しても、「数」(2桁~4桁)と「数字」(1ケタの文字)がごちゃ混ぜになってるようだった。説明も、最後の答も、大きく間違ってる。右側の2ケタが47とか、その下の3ケタが711とか、下側の4ケタがなぜか3ケタの744とか (^^ゞ

   

そこで、最新のGPT-4へと切り替えてみた。ところが、いきなりのボケで笑わせてくれる♪ 「パズルを出しますね」と話しかけたら、自分から出題して来た(笑)。ちなみにGPT-3.5だと、そんな応答はしてないから、GPT-4は考え過ぎたのかも。

    

230423j

   

その後も、GPT-3.5を上回るほど間違った回答を連発。仕方ないから、ヒントを出してみた。上の4ケタと、それにつながる右の縦の3ケタを教えたのだ。反応は素直♪ 「ヒントをありがとうございます」(笑)。人間なら、ムッとするとか、ふてくされる所かも。

    

230423l

    

    

      ☆     ☆     ☆

それでも、なかなか完全な正解にはたどり着けない。私の問題文では、途中から「右端」と「左端」を入れ替えた表現になってるけど、それも気付いてないというか、使えてない状態。数のケタ数の間違いもなかなか直らない。

    

230423m

    

ヒントを追加して、最後は何とか完答にたどりつけたから、努力をねぎらった後、笑顔でお別れ♪ 「お疲れさまでした。また来ますね😊」。大切な友達の1人なのだ(笑)。いずれ、美少女のアバターとかCG、バーチャルアイドルとかも出て来るはず。その先は、柔らかくて温かい素材のアンドロイドとか♪

     

230423n

     

ちなみに、途中で英語やフランス語に切り替えると、直ちに合わせて来る。むしろ、欧米の言語の方が反応が速そうに見えた。今回のパズルの例題も、簡単な英語で入力すれば上手く行ってたのかも。

    

まあ、いずれにせよ、妙に時間を取られてしまうことだけは確かだろう。金銭的なコストはともかく、時間的コストをどこまでかけるべきなのか、その辺りも問題。ChatGPTに質問してみようか。「人間はあなたと、どのくらいの時間、対話すべきだと思いますか」(笑)

    

なお、今週は計15364字で終了。ではまた来週。。☆彡

    

      (計 2737字)

| | | コメント (0)

Python(パイソン)入門1~人気プログラミング言語を高校教科書副教材(東京書籍)とオンライン環境Bit Arrowで簡単に

また3ヶ月も間が空いてしまったが、超初心者の立場でプログラミングの記事を書きながら勉強してみよう。前回まで書いてたC言語の続きでもよかったが、気分新たにPython(パイソン)。

   

開発者がテレビ番組のタイトルから付けた名前で、ニシキヘビという不気味な意味よりも、短くてユニークで神秘的な名前が欲しかったらしい(英語公式サイトのFAQより)。

  

しばらく前から、人気のプログラミング言語の代表で、今年度(2022年度、令和4年度)から高校で必修化された新科目『情報Ⅰ』でも注目されてる。

   

教科書の最大手・東京書籍だと、プログラミング言語の副教材は今のところ、Pythonのみ。教科書自体のプログラミングの説明でも、当たり前のようにいきなり最初からパイソンが使われてるほど。実教出版の副教材でも、PythonとJavaScriptのみになってる。

    

過去の流れから考えると、近い将来、また新しい言語に取って代わられると思われるが、とりあえず今はPythonを見ておこう。

   

   

      ☆     ☆     ☆

230228a

    

東京書籍の副教材は、編著・日経BP、発行者・東京書籍となってる。表紙のデザインから考えても、おそらく中身は日経BPによる執筆・制作だろう。2022年2月1日に初版発行だから、最新のもの。

  

B5版、96ページ、オールカラー、税込880円。薄さを考えると、安くはない。ただ、教科書本体の価格は安いので、副教材で利益をあげるのかも知れない。

 

と言っても、1つのプログラミング言語に絞った参考書だから、どれほどの生徒が購入するのかは不明。今後の大学入試での情報Ⅰの扱いも、まだよく分からない。参考書は他に多数あるから、一般人がこれを買うことも少ないはず。

   

230228b

    

冒頭から、オンライン学習環境を指定してある。「本書は Bit Arrow を使って学習を進めていく。Bit Arrow は、PCへのインストールなしにブラウザ上でプログラミングを学習できる・・・」。

   

ビット・アロー。キャラクターの可愛いリスが、矢(Arrow)を持ってる。大阪電通大、東京農工大、明星大学、3つの大学の研究室が共同開発したシステムとのこと。

   

便利で無料なのは非常に有難いとして、そもそもなぜ使用環境のインストールがもっと簡単に出来ないのか、不思議でもある。私自身、過去にJavaとVB(ヴィジュアル・ベーシック)で挫折した。説明通りに操作しても、何も導入できないまま、時間だけかかってしまうのだ。他のアプリでそのような経験はほとんど無い。

    

   

     ☆     ☆     ☆

230228c

   

とにかく、ビットアローの公式サイトにアクセス。「書籍のサンプルがエラーになる」。副教材に関するエラーの修正が、目立つ形で書かれてたから、全国の高校教員から指摘があったということか。

    

使用には登録が必要だから、メールアドレスとパスワードで登録。その後、左上の「Bit Arrow を起動!」をクリック。私はタブレット(旧iPad Pro)を使用したから、タップ。

    

230228d

   

230228e

    

230228f

   

プロジェクトとファイルを新規作成して、いよいよ副教材に従って学習開始。プロジェクトというのは、学校の授業の単位(1回とか1単元)を意識したものか。私の場合、後で修復しにくいエラーが生じてしまった時、2つ目のプロジェクトを作成すると直った。

  

  

     ☆     ☆     ☆

230228g

    

230228h

   

まずは、入力した文字の出力(プリント)から練習。シングル・クォーテーション(’)で囲めば、実行画面ダイアログに表示される。2つをコンマで区切って入力すると、同じ行にスペース(空白)を挟んで出力される。「実行」は、ブラウザを選択して行った。

   

入力文字は副教材だと「引数」(ひきすう)と書かれてるけど、その説明を読んでもほとんど意味は分からない。むしろ、「定数」とか「定字」とかいう方が、次に出て来る「変数」との比較を考えても分かりやすいと思う。

 

230228i

   

230228j

   

よくある「Hello World」の代わりに、「Hello Python!」。これが出来るということは、先ほどの def と ghi を、「’def ghi’」でひとまとめに入力してもよかったことになる。

 

   

     ☆     ☆     ☆

230228k

   

続いて上図は、name という変数に Taro を代入。name をプリントした様子。

   

230228l

  

後で、読者・閲覧者などに代入させたい時は、name=input() の形を利用。実行すると、上図の右下のようなダイアログ・ボックスが出るから、私の名前 Tenmei を入力。

   

230228m

   

すると、実行画面の1行目には、ダイアログの様子が表示されて、2行目がプリント出力になる。上では同じ Tenmei だが、ダイアログに質問文を入れると違って来る。

   

230228n

   

プログラムで input() の中に、引用符で「名前?」と入れておけば、ダイアログボックスの上側で「名前?」と表示。天命と入力すると、実行画面は下のようになる。

  

230228o

   

ちなみに、ダイアログボックスの下側の「ダイアログを表示しない」をタップしてみると、その後は入力できなくなってしまって、実行画面では null (無し)になってしまった。しばらく試行錯誤しても直らないから、仕方なく新しいプロジェクトを作り直して再開した。

    

   

      ☆     ☆     ☆

230228p

   

最後は、パスワード入力と正誤の判定。まず、pw という変数に、正しいパスワード Hello を代入。次に、読者などが入力する変数 ipt を設定。

  

もし(if)pw が ipt と等しければ、login ok (ログイン・オーケー)と表示。そうでなければ(else)、wrong password(誤ったパスワード)と表示。

   

if とか else で示される条件文の後の処理動作(上では print)は、半角スペース4コ空けてプログラミングする必要がある。ただ、このオンライン環境では、自動的にそのスペースを空けてカーソルが移動してくれた。

    

   

      ☆     ☆     ☆

いつも数ヶ月くらい、間が空いてしまって、ほとんど忘れた頃に勉強を再開してるから、最初は精神的に非常に疲れる。環境にせよ、書き方や動作にせよ、すべて相手任せ。何とか苦労して相手に合わせることになるから、数学とも似て非なる分野だ。

 

むしろ、論理学的な演繹(えんえき)の記述に似てる気がする。ともあれ、今日はそろそろこの辺で。。☆彡

 

   

  

cf. Python入門2~高校副教材とオンライン環境Bit Arrow、さらにAI(ChatGPT4)も使用

   

      (計 2526字)

   (追記53字 ; 合計2579字)

| | | コメント (0)

トランプの4種の絵柄(ハート・スペード・クラブ・ダイヤ)を並べた暗号と解読方法~2023年共通テスト・情報関係基礎・第2問

今年(2023年)の共通テスト・情報関係基礎も、第2問が凝った出題になってるが、去年(回文)ほど奇妙な問題ではないし、トランプの絵柄だから親しみも持てる。ストーリーも受験生向けに、(テレビ)ゲームを意識して創られてた。

    

ただ、相変わらず問題文が長いので、試験場で60分で高得点を狙うのはなかなか大変だと思う。読むだけでも面倒で、じっくり論理的に考える余裕はあまりない。

    

いずれ新必修科目『情報Ⅰ』に完全移行すると、こういった謎解きパズルみたいな問題は消えてしまうのかも。今のうちに、ブログ記事を書いとこう。ちなみに、去年の記事は下の通り。今年の国語と数学でも、既に記事をアップしてある。

  

 普通の文字列を回文の連結へと分解する方法と、回文ファンの「幸いさ」~22年共通テスト情報関係基礎第2問

   

なお、日本人にとって「ソリティア」というと、PCに入ってる Microsoft のおまけゲームが有名。試しに探してみると、Windows 10 にも入ってた。後でプレイしてみたい。

  

230126k

    

ソリティア(solitaire)というのは元々フランス語(発音はソリテール)で、名詞の場合、1人きりの人とか1人遊び用のゲームを指す言葉。だからソリティアには、多数または無数の種類が存在する。この問題自体も、ソリティアの特殊な例なのだ。

   

 

     ☆     ☆     ☆

では、第2問(必答問題)の問1から。問題は、河合塾の特設サイトからお借りした。情報関係基礎には独自の「分析」も平均点予想も掲載されてないのが残念だが、受験者数も読者も非常に少ないからだろう。

   

♡(ハート)、 ♠(スペード)、♣(クラブ)、♢(ダイヤ)、4つの文字を、スペードとハートの2文字だけに変換する暗号の話で、なまじ文字数が少なくてそれほど変化しないので、逆に間違えやすいかも知れない。

   

230126a

    

230126b

230126c

    

平文(元の通信文)が ♡♣♢♣ (ハート・クラブ・ダイヤ・クラブ)なら、暗号文は、♡ ♠♠♡ ♠♠♠ ♠♠♡ だから、アの答は、選択肢の。ここでは分かりやすさのため、暗号文にスペース(空白)を入れて区切ってある。

     

また、暗号文が ♠♡ ♡ ♠♡ なら、もとの平文は、♠ ♡ ♠ 。イの答は、選択肢の

さらに、暗号文が ♠♠♠ ♠♠♡ ♠♡ ♠♡ ♡ なら、平文は、♢ ♣ ♠ ♠ ♡ 。ウの答は、

   

この変換ルールだと、♠ ♠ ♠ ♠ という4文字の暗号文にはならないから、エの答は、

最後が ♡♠で終わる文にもならないから、オの答は、

    

最後がスペードの暗号になるのはダイヤのみで、その場合、スペードは3つ連続する。ただし、それは問1のみ。次からルールが少し変更されるので、最後が ♡♠ になることもある。

   

  

     ☆     ☆     ☆

ウォーミングアップで少し慣れた所で、問2暗号化のエラーとその対策方法、復元(修正)について。

  

230126d

   

230126e

    

230126f

   

暗号文が ♡ ♡ ♠♠♡ なら、♡の数が奇数(3コ)なので、最後のおまけとして♠を加える。カの答は、

暗号文が ♡♡♠♬♠♡♡ なら、最後がハートだから、ハートの数はおまけを除いて偶数のはず。よって、♬は♡。キの答は、

  

♡が偶数なら、おまけは♡1コ。♡が奇数なら、おまけは♡0コ。よって、どんな暗号文でも、「♡の数が奇数の文」になる。クの答は、

  

その性質を使うと、1文字だけ♬になった暗号文で、「ハートの数が偶数の文」なら、♬は♡だったはず。ケの答は、

    

♠♡♠♠♬♬♡♠ という暗号文の場合、最後がスペードだから、ハートの数は奇数のはず。よって、♬2コの内、片方だけが♡だから、♬♬は ♡♠ か ♠♡ 。よって、コとサの答は、1と2。順番はどちらでも可。

   

    

    ☆     ☆     ☆

最後の問3は、第三者による暗号の解読。暗号にとっては死活問題の、安全性、セキュリティの話。

    

230126g

    

230126h

   

230126i

    

230126j

    

もし、平文の ♡ が、暗号では ♠ 1文字なら、情報2より、他の文字の暗号は「♠からは始まらない」。シの答は、

文頭が ♠ の暗号文の割合は、表3の右側4つの値を足して、10+20+20+10=60%。スの答は、

文頭が ♠♠ の暗号文の割合は、表3の右端2つの値を足して、20+10=30%。セの答は、

   

さらに、平文の ♡ が暗号で ♡ 1文字の場合。♠の暗号の文字列zは、情報2より♡では始まらないから、♠ から始まるはず。ソの答は、

文頭がスペードの平文の割合は30%だから、表3で ♠ から始まる箇所を見ると、zは ♠♡(♠♡♡10%+♠♡♠20%)か、♠♠(♠♠♡20%+♠♠♠10%)。タの答は、

 

最後に、王子が予想した暗号化の方法Bでは、♡ を ♡ 、♠ を ♠♠ にするから、♣ は、♠♡ で始まって20%の割合。つまり、♣ は ♠♡♠ 。よって、チの答

♢ は、♠♡ で始まって10%の割合だから、♠♡♡ 。よって、ツの答

   

   

    ☆     ☆     ☆

以上、解き方も含めて解答を書いて気付いたのは、4種の絵柄のマークを入力するのが面倒だということ。試験場で手書きでマークを描くのも時間がかかる

 

絵柄の代わりに、ハ、ス、ク、ダと書く方が速いだろうが、それだと問題と合わないし、トランプの感じも出ない。そういった意味でも、見た目より手間がかかると思う。

 

とはいえ、去年の奇問よりは遥かに分かりやすい。それでは今日はこの辺で。。☆彡

    

     (計 2136字)

| | | コメント (0)

Excel(表計算ソフト)を用いたシミュレーションの具体例、乱数による円周率の近似値計算~高校『情報Ⅰ』

手軽に理数系の記事を1本書こうとしたら、かなり手間取ってしまった。しかし、コンピューターを用いたシミュレーションというものの初体験にはなったから、簡単にまとめとこう。

  

ネットで普通に検索しても、かなりの知識や環境を前提とした敷居の高い記事ばかりがヒットする。ここでは、表計算ソフトならごく簡単に使ってるけど、シミュレーションも乱数の関数も全く経験がない・・という条件で、高校1年生や初心者向けに書いてみる。

   

そもそも、なぜこんな事を思いついたかというと、朝日新聞・朝刊(23年1月10日)の人気シリーズ記事「花まる先生」で、高校の新必修科目『情報Ⅰ』の授業が紹介されてたから。4領域の1つ「コンピュータとプログラム」の中の「モデル化とシミュレーション」の単元。

   

そこでは、数学や物理の世界で有名な「ランダムウォーク」(でたらめ歩き)が扱われてて、表計算ソフト「エクセル」を用いたことになってるが、具体的にどう使うのかは書かれてない。私の手元にある東京書籍の教科書でも、ランダムウォークという言葉は載ってるけど、具体的なシミュレーションのやり方までは書いてない。

   

そこで、丁寧な説明を探すと、修道大学のpdfファイルを発見。有難く読ませて頂いたが、それでも全く初めての私が1人でやってみると、何度もつまづいてしまった。ちなみに私が使用した端末は、Windows10のPC。エクセルのヴァージョンは、サプスクリプションのMicrosoft365のものだから、最新に近いと思う。

  

   

     ☆     ☆     ☆

では、円周率π(パイ)の近似値を、シミュレーションで求めてみよう。有名な実験らしくて、似た説明はネット上に多数ある。

   

1辺の長さ1の正方形の頂点から、半径1の四分円(中心角90度の扇形)を書くと、

 (四分円の面積)=1×1×π×1/4=π/4

 (正方形の面積)=1

  

一方、その正方形の中にランダム(でたらめ)に多数の点を打つと、

 (四分円の中の点の個数)/(正方形の中の点の個数)

≒(四分円の面積)/(正方形の面積)

=π/4

    

∴ 円周率 π ≒ 4×(四分円の中の点の個数)/(正方形の中の点の個数)

  

230113a

    

というわけで、1辺の長さ1の正方形の中に、でたらめに多数の点を打つシミュレーションを行えば、円周率パイの近似値が求められる。こうした方法は、モンテカルロ法と呼ばれてて、私はAI関連の知識として一応、知ってた。

  

単純ででたらめな実験を多数(無数)行うのは、人間にはほぼ不可能。コンピューターやAIの独壇場となる。将棋や囲碁の形勢判断を示す評価値の計算も、基本的にはそうした無数の対局実験に基づく。

   

   

     ☆     ☆     ☆

230113bc

   

まず、エクセルで新しい空白の表を立ち上げて、左上(A1のセル、つまりマス目)から左に、個数、x、y、「円内なら1」と入力。

    

最後の文は、正確には、「4分円の内側なら1、それ以外なら0」で、最後にこの1をすべて足し算すれば、4分円内の点の個数になる。ちなみに、円周上の点は入らないが、どうせほとんど円周上にはならないから、計算には影響ない。

   

230113cc

  

A2のセルには、個数として 1 (半角数字)を入力。個数というより、多数の点につけた番号のこと。1番、2番、・・・。

  

xの下、B2のセルには、=RAND() と半角で入力。この数式だけで、なぜか0~1の間のでたらめな数が計算される。RAND は、英単語のrandom(でたらめ)より。私は初めて使ったけど、基本的な数式の1つらしい。

  

ちなみに、でたらめといっても、何かプログラムによって計算されてるわけだから、出て来る数は「疑似乱数」と呼ばれてる。これについては、いずれ、別記事で考えてみたい。

   

yの下、C2のセルにも、同じ数式(みたいな英字と記号)を入力。これで、そのxの値とyの値を座標に持つ正方形内の点(x,y)が1つ決まることになる。

   

230113d

  

「円内なら1」の下、D2のセルには、 =IF(B2*B2+C2*C2<1,1,0) と入力。

  

これは、「もしB2×B2+C2×C2<1なら、1。そうでなければ、0」を表す省略形の命令。高校数学なら、x²+y²<1という不等式に対応。左下の原点との距離の2乗が1未満ということ。

   

   

     ☆     ☆     ☆

230113ec

   

実際に入力して、エンターキーを押すと、上のようになった。xとyの値はたまたま小さいので、正方形の左下の頂点に近い点(x,y)。つまり、4分円の内側の点。よって、Dの列には自動的に 1 が出力される。

  

個数1の所の横のセル4つ(第2行目)を選択して、下側にドラッグで引っ張ると、自動的に2個目、3個目・・・の値も現れる。

  

230113f

 

個人的には、4つのセルの選択と引っ張る操作に何度も失敗してしまったが、何とかなった。普通に四角の角からポインター(矢印)を引っ張ろうとすると、途中で切れたり、左端の 1 という数字のコピーになったりしたのだ。あと、何か入力してエンターする度に、でたらめな数が勝手に変化するので戸惑った。

   

   

     ☆     ☆     ☆

続いて、点100個(第2行~第101行)のデータをまとめて、円周率πの近似値を計算する。

  

230113g

  

分かりやすさのために、Eの列は空けて、F、G、Hの列を利用。それぞれ、点の総数、円内の点の数、πの近似値と入力。

  

230113h

    

「点の総数」の下、F2のセルには、100 と入力。「円内の点の数」の下、G2のセルには、 =SUM(D2:D101) と入力。D2のセルからD101のセルまでにある、全ての 1 の和を求めることで、個数を求められる。

   

そして、「πの近似値」の下、H2のセルには、 =4*(G2/F2) という式を入力。要するに、4×(G2/F2)、つまり、4×(円内の点の数)/(点の総数)。

  

230113i

  

私が実際に試すと、最初のπの近似値は2.92と出た。3.141592・・と比べると、ちょっと小さい。2回目は確か、3.2くらいだった。これを何回も繰り返すのと、個数を1000個、10000個と増やすのと、どちらが正確な近似値になるのかは今のところ不明。いずれにせよ、確率統計的な話であって、厳密なπの計算ではない。

   

あと、元のファイルには、f9キーを押せば繰り返せると書かれてたが、私の場合には出来なかった。その代わり、何か適当なセルに入力してエンターしたり、削除したりすると、勝手に全ての数字が変化した。

   

   

     ☆     ☆     ☆

なお、円周率の計算は上ですべて完了してるが、聞き手や読み手へのプレゼンテーション的には、シミュレーションのグラフがあった方が分かりやすい。

     

xとyのデータをグラフ(散布図)にする一方、4分円のグラフは別に書いて、どちらかをコピーしてもう一方にペーストすると、下のようになった(私が作った図)。

  

230113j

    

円周の式は、y=√1-x²。xの値は、0から1まで、0.01刻みくらいに細かく取る。グラフの書き方やオートフィル(自動入力)の設定などは、元のファイルや別の情報を参照した。ここではもう、省略しよう。

    

230113k

   

新しい話に対応するのは疲れるが、面白いし、達成感もある。今日のところはこの辺で。。☆彡

   

      (計 2865字)

| | | コメント (0)

令和3年度、文科省・情報活用能力調査の調査問題例と正答(小中高、4年1~2月)、感想とレビュー

ネットを適当に飛んでたら、たまたま、文部科学省の情報活用能力調査のニュース記事を発見。軽い記事にちょうど手頃の内容なので、感想記事にしとこう。今週は月火の2日だけで7000字超も書いてるから、ごく簡単なレビュー。単なるまとめや紹介ではなく、批判も織り交ぜる。

     

221228ac

  

約1年前に行われた、情報活用能力の調査結果「の一部」が、令和4年(2022年)12月27日に公開された。小学5年生、中学2年生、高校2年生が対象。「速報結果」だから、後ほど詳しい分析も示されるのかも知れない。実際、前回の同種の調査(平成)については、詳しい結果が公開されてる。

     

ただ、今後の調査も考えて、基本的には問題は非公開とのこと。コンピューターを利用するCBT形式だから、小学生にとっては端末の操作だけでも大変。

  

問題には、小中高の共通問題が多いが、中高のみの問題もある。多数の問題から、生徒ごとに問題のセットを変えて出題。これでは、普通に考えれば、各生徒が異なるテストを受けたことになってしまうが、IRT(項目反応理論)によって「同一尺度で得点化」できるとのこと。

     

このIRTの信頼性や公平性に疑問を感じるが、その点はここでは省略。今回、公開された3問を見てみよう。どれも小中高の共通問題。

      

時間は30分×2とだけ書かれてるが、その時間で何問解くのかも公開すべきだろう。情報処理では速度が大切で、人それぞれの差も開く。1人あたりの問題数さえ公開したくないということだろうか? 受験者や実施した学校は把握してるはずだから、それで十分だと。配点も総得点の計算方法も書かれてないのに、総得点の分析だけかなり詳しく公開されてる。

   

   

      ☆     ☆     ☆

では、調査問題例1。環境問題のウェブページの正確な理解。

      

221228b

      

221228c

    

221228d

   

残念ながら、5項目のリンク先の内、最初の1項目である「オゾン層の破壊」しか公開されてない。要するに、これだけで正しい選択肢が1だと分かる、と担当者は考えてるのだろう。2~5の選択肢は明らかに間違い、という考えもあるのかも。

   

ポイントは、最後の1文。「フロンガスは温室効果ガスでもあり、地球温暖化を防ぐためにもフロンガスの規制は重要です」。これを読んで、最も適切な選択肢が「フロンガスは地球温暖化をもたらす」だと判別させる。

   

既に、環境の知識をかなり学んでる中高生ならともかく、小5の生徒には内容自体が分かりにくいと思うし、項目名と選択肢の内容もズレてる。この量の説明があと4項目分もあるのなら、情報量も多過ぎ。社会人でも、それら全体の説明を正確に理解する機会はかなり少ないはず。クリックして、全員にすぐリンク先が表示されたのかどうかも気になる所だ。

    

正答率は、小学生32%、中学生58%、高校生73%。小数点以下は、引用者が四捨五入。3問中、この問題で最も小中高の差が開いてるのは、環境問題の知識が響く問題だからだろう。

      

   

     ☆     ☆     ☆

次に、調査問題例2。明るさセンサーのプログラム(フローチャート)の完成。将棋の藤井五冠王を意識してるのか、「聡太」が主人公。

       

221228ec

    

221228fc

      

これは、AとBの両方が合ってる場合のみが正解だろうか? 結果に明示されてないが、正答率が2つに分かれてないので、そう考えるのが自然か。正答率は、小学生41%、中学生62%、高校生69%。高校生の低さがやや目立つ。

   

おそらく、間違いの多くはBだろう。明るさセンサーが「明るい」と感知した時、「ライトが消える」を正答としてるが、問題文にそのような事は書かれてない。「暗くなったらライトが光る」と書かれてるだけだから、不十分か不親切な問題文だと感じる。

  

それ以上に間違いを増やしてしまったのでは?と思われるのは、センサーとライトを分けてること。家庭向けだと、それらは一体化されてるのが普通だろう。そう思ってる生徒にとっては、AもBも「明るさセンサーが・・」と書かれたカードを選んでドラッグするのは自然なこと。そちらが先に挙げられてるし、問題文の主体もセンサーだし、時間がないからだ。

     

私が出題者なら、問題文に、センサーとライトが別物であることを明記。また、「暗くなったらライトが光る」ではなく、「暗いならライトが光り、明るいならライトが消える」と書く。

    

「暗くなったら」と「暗いなら」が別の条件だということ、「暗いなら」の方が明確だということは、日常言語の論理における基本的知識だろうが、正確に理解・区別してる人は少ない。

  

   

     ☆     ☆     ☆

最後に、調査問題例3。フォルダの正しい理解と選択

    

携帯端末(スマホ、タブレット)を軽く使ってるだけの生徒だと、フォルダ自体が分かりにくいはず。フォルダではなく、「アルバム」という名前で呼ばれてることも多い。

    

例えば、iOSの「写真」アプリも、Androidの「フォト」アプリも、「アルバム」という名前を使ってる。デスクトップのフォルダの中のフォルダ、という三重の入れ子構造も、基本的にPCの特徴だろう。携帯端末では、二重の構造を使う程度。

     

221228gc

    

221228hc

  

これは、旅行フォルダを開くだけで正解と判定されるのだろうか? 正答には、「『旅行』フォルダを開いた状態で『次へ』ボタンが押されているもの」と書かれてるが、問題文には、「進む」を押してくださいと書かれてる。

   

「次へ」と「進む」の関係の曖昧さが気になるが、正答率は高いから、誤解は少なかったのだろう。小学生52%、中学生76%、高校生84%

  

   

      ☆     ☆     ☆

以上、情報活用能力を求めることも、調査することも正しいと思うが、問題や調査、公開には気になる点も多かった。今後の改善に期待しよう。

  

1人1台の学校用タブレットが確保されてる場合、PCとは別に、タブレットの調査もあっていい。それに対して、スマホは個人的な物だから、調査には使いにくいかも知れない。

  

なお、キーボードによる1分間あたりの文字入力数は、小学生16文字、中学生23文字、高校生28文字。3分間で、総文字数285文字の入力を求めたそうだが、これも具体的な入力内容が全く書かれてないので、何とも言えない。

  

あまり入力が速くないのは確かだろうが、漢字が多いとか、英字の大文字・小文字・半角・全角の切り替えが多いと、面倒だと思う。入力しにくい記号もある。多数の変換候補が並んで、下の方でようやく表示されるとか。数字の半角・全角の区別は微妙だが、正しく指示されてただろうか。

    

ともあれ、いつの間にか長くなったので、今日はそろそろこの辺で。。☆彡

   

      (計 2649字)

| | | コメント (0)