教室長

プログラミング教育は必要ですか?

投稿日:

日本の貧困層の子の数学力は、
英米の富裕層の子のそれより確かだ、という話を聞きました。

どこのどんな調査かは分かりませんが、
そうなのかもな、と感じています。

学校でプログラミング教育を扱うようですが、良い事ですね。
知人はScratchを用いた予習を小1からさせています。

数学は現象に記号を与え、記述と計算を可能にします。
言葉もまた現象に記号を与え、記述と取り扱いを可能にします。
この点において数学も言葉の一種だと感じています。

数学はコンピュータとの相性が良いと思います。

プログラミングまではできずとも、
Excelのマクロくらいは扱えた方がまだ当面は有利でしょう。

もしかしたら塾でもマクロ程度は教える日がくるのかな。
一新ゼミでは現在、試験的に中2にPythonを使ってもらっています。

さて。

あるプログラムを試作しており、
それが吐き出す数値を日々分析しています。
毎回の手打ち数式をマクロ化したので記録。
3時間もかかってしまいました。

Option Explicit

Sub MyStandardize()

Dim ws As Worksheet
Set ws = Worksheets(1)

Dim maxRow As Long
Dim maxCol As Long
‘UsedRangeのRowsプロパティに、UsedRange.Rows.Countで取得した総行数を指定し、最終行を取得
maxRow = ws.UsedRange.Rows(ws.UsedRange.Rows.Count).Row
maxCol = ws.UsedRange.Columns(ws.UsedRange.Columns.Count).Column

‘■■Result列のz値を算出■■
‘Result列を取得
Dim ResultCol As Long
‘ Find関数内はWhat:=Cells(3, 15).Valueなどでも良い
ResultCol = Range(Cells(1, 1), Cells(1, maxCol)).Find(“Result”).Column
‘標準化の際の目標値は後で手動入力するので、暫定的に平均値を求めて代入しておく
Cells(1, maxCol + 1).FormulaR1C1 = _
WorksheetFunction.Average(ws.Range(Cells(2, ResultCol), Cells(maxRow, ResultCol)))
‘Resize(行数,列数) 行数と列数は省略可能
Cells(2, maxCol + 1).Resize(maxRow – 1).FormulaR1C1 = _
“=IF(RC” & ResultCol & “=””””,””””,” & _
“STANDARDIZE(RC” & ResultCol & “,R1C,” & _
“STDEVP(R2C” & ResultCol & “:R” & maxRow & “C” & ResultCol & “)))”

‘■■Trades列のz値を算出■■
‘Trades列を取得
Dim TradesCol As Long
‘ Find関数内はWhat:=Cells(3, 15).Valueなどでも良い
TradesCol = Range(Cells(1, 1), Cells(1, maxCol)).Find(“Trades”).Column
‘標準化の際の目標値は後で手動入力するので、暫定的に平均値を求めて代入しておく
Cells(1, maxCol + 2).FormulaR1C1 = _
WorksheetFunction.Average(ws.Range(Cells(2, TradesCol), Cells(maxRow, TradesCol)))
‘Resize(行数,列数) 行数と列数は省略可能
Cells(2, maxCol + 2).Resize(maxRow – 1).FormulaR1C1 = _
“=IF(RC” & TradesCol & “=””””,””””,” & _
“STANDARDIZE(RC” & TradesCol & “,R1C,” & _
“STDEVP(R2C” & TradesCol & “:R” & maxRow & “C” & TradesCol & “)))”

‘MsgBox “Result=” & ResultCol & vbCrLf & _
‘ “Trades=” & TradesCol

‘■■先に算出したz値が双方正の場合のみ、その積を算出■■
Cells(2, maxCol + 3).Resize(maxRow – 1).FormulaR1C1 = _
“=IF(RC[-1]=””””,””””,” & _
“IF(AND(RC” & maxCol + 1 & “>0,RC” & maxCol + 2 & “>0),RC” & maxCol + 1 & “*RC” & maxCol + 2 & “,-1))”

End Sub

-教室長


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

だったら、結果を出せ。

自分のやり方に拘ることは悪くない。 ただ、年長者や経験者から見ると、愚策にしか思えない時がある。 だからこそ、ゼミ生達には、できるだけ効率の良い勉強法を伝えているつもりなのだけれど。。。 頑固なのか、 …

朽木不可雕也

「きゅうぼくはえ(ゑ)るべからざるなり(きゅうぼくはほるべからざるなり)」と読みます。孔子の言葉です。朽ちた木を彫り造形を施すことはできないという意味です。要旨はあえて書かずにおきたいと思います。 講 …

no image

三単現のエス

『三単現のエスをいつつければいいのかが分からない』と質問してくれたゼミ生がいました。 三単現という略語を知っているのに、面白い質問だなと思いながら対応しました。 私『三単現を略さずに言うと?』 生徒『 …

no image

夏休み前半戦終了。

台風も来るし、お盆休みも少しは取ろうかなということで、14日から17日まで小野田教室はお休みです。 8月になって、新しい場所でお昼から夕方までは自習OKとし、ほぼ毎日ゼミ生に開放してきました。 皆勤賞 …

no image

楽しい?反省会。

定期テストや習熟度テストが返却されたら、ゼミ生と一緒に反省会をします。 反省会というと、大袈裟に聞こえるかもしれません。 ただ答案用紙をみせてもらって、ゼミ生と私と2人で話し合うだけです。 例えば。。 …

サイト内検索

カテゴリー

アーカイブ