スクリプト1(どこでも電卓)
このページはマス旅の一部です。
PCがあればすぐできる「スクリプト」を使った数学を考えましょう。
今回は、PCを電卓代わりにする使い方をさぐる、「どこでも電卓」。
1.どこでも電卓
Windowsのコマンドプロンプトや、Linuxのターミナルでも
電卓程度の計算などができることはあまり知られてません。
Chromebookでもメニューで選ぶだけでLinuxが入ります。
Windows(PowerShell)を略してPS
Linux(LinuxのTerminalのbashスクリプト)を略してBSとかきます。
プロンプトのあとに入力データを書いてます。
出力は[OUT]からの行です。
//からコメント行です。<計算結果の表示>
メッセージなどが色々うっとうしかったら clear で画面をきれいにします。
//PS
clear
$a = 2 + 3
$a
[OUT] 5
//BS
clear
let a=2+3
echo $a
[OUT] 5
//PSもBSも変数aの内容が表示されますね。
コマンドラインのスクリプトのいいところは
「↑」キーで今まで入れたヒストリーが順に表示されることです。
表示を戻しながら + を - * / に変えてみましょう。
//PS
$a = 2 - 3
$a
[OUT] -1
$a = 2 * 3
$a
[OUT] 6
$a = 2 / 3
$a
[OUT] 0.666666666666667
2 / 3
[OUT] 0.666666666666667
//PSは変数宣言なしで、しかも割り算の商を小数で出してくれました。
//BS
let a=2-3
echo $a
[OUT] -1
let a=2*3
echo $a
[OUT] 6
let a=2/3
echo $a
[OUT] 0
echo "2/3"
[OUT] 2/3
echo (2/3)
[OUT] syntax error
おっと、BSでは小数を切り捨てて 0 にされてしまいました。
そして、変数なしにしたらうまくいきません。
BSで小数を扱うには、echoのあとに "scale=精度; 計算式" | bc とかきます。
精度は小数の桁数を指定して、セミコロン(;)のあとに計算式をかき、文字列にします。それをパイプライン(|)で bc コマンドに渡します。
また、整数範囲でよければ echo $((計算式)) と書くこともできます。
//BS
echo "scale=3; 2/3" | bc
[OUT] .666
echo $((2 + 3))
[OUT] 5
これで、BSもPSと同等の計算ができるようになりましたね。
<四則計算の表示>
かっこを使った四則計算はどうでしょうか。
//PS
(10 + 5) * 3 / 2
[OUT] 22.5
//BS
echo $(( (10 + 5) * 3 / 2 ))
[OUT] 22
//BSの $(( )) は整数計算なので小数が切り捨てられますが、カッコの計算順序はバッチリです。
<べき乗はどうか>
//BS
echo $(( 2 ** 3 ))
[OUT] 8
//Pythonっぽい書き方ですね!
echo "2.5 ^ 3" | bc
[OUT] 15.625
//小数のべき乗は bc コマンドを使います。
//PS
//PSは残念ながら関数に頼ります。少し仰々しいですね。
[Math]::Pow(2, 3)
[OUT] 8
[Math]::Pow(2.5, 3)
[OUT] 15.625
//よいところは、整数も小数も同じ形式で扱える一貫性がある点です。
<電卓アプリを出す>
//BS
calc
[OUT] コマンド 'calc' が見つかりません...
BS(Linux)では、標準状態だと電卓コマンドが入っていないことがあります。
でも、安心してください。
Linux環境には Python が標準で入っています。
ターミナルで python3 と入力すると、すぐにPythonの対話モードが立ち上がります。
Pythonはスクリプトとして使えて電卓以上のことができますから、とても便利です。
今の高校生は「情報」の授業でPythonを使うので、なじみがある人も多いでしょう。
//PS
calc
[OUT] (Windows標準の電卓アプリが起動)
PSで calc と打つと、おなじみの電卓が表示されます。
左上の3本線メニューを押すと「標準」「関数電卓」「グラフ計算」「プログラマー」
などが選べます。
この「グラフ計算」はGeoGebraの簡易版のようなもので、数式を入力するとグラフを描き、交点にカーソルを近づけると座標まで教えてくれます。
いきなり「高性能関数グラフ電卓」が降臨するわけです。
計算については、メニューやヘルプを調べればPSもBSも相当なことができそうですね。
2.いつでもGeoGebra
ここまでで、PCを持っていればターミナルから簡単な計算ができるし、電卓以上の機能が利用できることがわかりました。
では、われらがGeoGebraはどうでしょうか。
<GeoGebra>
数式ビューに
2 + 3
2 - 3
2 * 3
2 / 3
と入れると、つぎつぎと結果が変数名つき(a = 5, b = -1 ...)で表示されます。
(10 + 5) * 3 / 2
2^3
2.5^3
これらもあっという間に計算してくれますね。
それどころか、
A = (1, 1^3)
B = (2, 2^3)
C = (2.5, 2.5^3)
と打つと、y = x^3上の点 (x, x^3)$の3つの位置が画面(グラフィックスビュー)にプロットされます。
さらに、
f(x) = x^3
と打つと、瞬時に美しい曲線グラフまで表示してくれます。
タイトルは「電卓のようにgeogebraを気軽に使おう」
GeoGebraはユーザー登録さえすれば、
自分の庭のようにアプリやワークシートを作ることができ、
世界中の数学教育者の創意工夫に出会える
すばらしいツールですね。
電卓のようにgeogebraを気軽に使おう
Windowsの標準アプリ[calc]
![Windowsの標準アプリ[calc]](https://www.geogebra.org/resource/eutcq7bt/cuzz9ouC1jkbvYtA/material-eutcq7bt.png)