Munet Meddler 説明書


プログラム概要

 .NET1.1、2.0で組んだ、メモリ食いまくり不良電卓プログラムです。
Google電卓とかxyzzyとかemacsとか差し出されると制作者は素で泣きます。やめてください。

必要環境

 Windows98以上のOS(おそらく)、.NET Framework 1.1もしくは2.0が必要です。
別途Microsoft Updateより入手してください。
( Linux || *nix ) && Mono 1.1でも可能らしいですが、未確認です。

インストール/アンインストール

 Win@NET1.1な環境の人は、
解凍フォルダ内の「net11」のフォルダを適当なところに移して、
フォルダ内のmumed.exeを起動してくれればOKです。
 同じく、Win@NET2.0な環境の人は、
解凍フォルダ内の「net2」のフォルダを適当なところに移して、
フォルダ内のmumed.exeを起動してくれればOKです。

 アンインストールは上記ファイルを消し去ればOKです。
レジストリは操作しません。設定ファイルとして「iniMCalc.dat」を生成しますが、
これも消しちゃって構いません。

操作方法

実行画面
 画面真ん中のテキストボックスで操作します。
例えば、(* 3 5)と書いて、そこでCtrl+Eを押せば、
その下の行に;Value : 15と表示される仕組みです。
テキストボックスでは、それ相応の操作はできるようです。
Ctrl+X → 切り取り
Ctrl+C → コピー
Ctrl+V → 貼り付け
Ctrl+Z → 元に戻す

 計算方法については、どんどん下を読み進めていってください。

 画面右上の下三角のボタンで色々なオプションを設定します。

終了時に状態を保存 → チェックしていれば、終了時にテキストボックスの内容を保存します。
フォントの設定 → テキストボックスのフォントを設定します。
背景色の設定 → テキストボックスの背景の色を設定します。
前景色の設定 → テキストボックスの文字の色を設定します。

扱える数字

整数 -?[0-9]+で表現される数字です。
今のところ64bit符号付整数までは正確に扱えます。
ex. 1353 -25667
分数 -?[0-9]+/[0-9]+で表現される数字です。常に約分され、
分母が1になると整数として扱われます。
分母・分子とも、今のところ64bit符号付整数までは正確に扱えます。
小数 -?[0-9]+.[0-9]+で表現される数字です。
64bit浮動小数点として扱われます。
ex. 0.34 0.45
複素数 ^(-?)([0-9\./]*)([/+/-])([0-9\./]*)i$、もしくは
^(-?)([0-9\./]*)i$で表現される数字です。
実部は虚部、整数でも分数でも小数でも構いません。
ex. -i 2.4+3/2i

四則演算

+ n1 n2 n3 … 加算を行います( n1 + n2 + n3 + … )。
ex. (+ 4 6) (+ 4 6 9 13)
- n1 n2 n3 … 減算を行います( n1 - n2 - n3 - … )。
ex. (- 4 6) (- 4 6 9 13)
* n1 n2 n3 … 乗算を行います( n1 * n2 * n3 * … )。
ex. (* 4 6) (* 4 6 9 13)
/ n1 n2 n3 … 除算を行います( n1 / n2 / n3 / … )。
2番目以降の引数に一つでもゼロが含まれていればエラーです。
ex. (/ 4 6) (/ 4 6 9 13)
\ n1 n2 n3 … 除算を行い、その商を表示します( n1 ÷ n2 ÷ n3 ÷ …)。
2番目以降の引数に一つでもゼロが含まれていればエラーです。
商は整数同士の演算でのみ定義される故、
小数や分数が混じっている場合は除算と同様になります。
ex. (\ 15 4) (\ 15 4.0)
% n1 n2
mod n1 n2
除算を行い、剰余を表示します。
剰余の計算は.NETの演算子%に従うはずです(←手抜き解説)
2番目の引数がゼロが含まれてならばエラーです。

基本的な関数

sin n1 n1の正弦を表示します。ラジアンで指定してください。
以下、三角関数は今のところ実数のみ対応です。
複素数は華麗にスルーします。
ex. (sin 1.57)
cos n1 n1の余弦を表示します。
tan n1 n1の正接を表示します。
asin n1 n1の正弦の逆関数を表示します。
-1〜1以外の入力は華麗にスルーします。
acos n1 n1の余弦の逆関数を表示します。
やはり-1〜1以外の入力はスルーします。
atan n1 n1の正接の逆関数を表示します。
sinh n1 n1の双曲正弦を表示します。
cosh n1 n1の双曲余弦を表示します。
tanh n1 n1の双曲正接を表示します。
ln n1 n1の自然対数を表示します。複素数対応。
ex. (ln 2.718) (ln 1+i)
log n1 (n2) n2を底としたn1の対数を表示します。
引数n2が省略された場合は常用対数を表示します。
ex. (log 8 2) (log 100)
floor n1 n1を超えない整数を表示します。
ex. (floor 5.2) (floor -5.2)

様々な関数

tri n1 n1番目の三角数(1からn1までの和)を表示します。
ちなみにn(n+1)/2で求められるから、整数以外も可能。
rect n1
square n1
n1番目の四角数(=n1の二乗)を表示します。
cube n1 n1の三乗を表示します。

著作

 牛島雅之が所有します。
転載・再配布等の条件は以下のURLに示す通りとします。
http://munet.oc.to/about.html

 多少マシなプログラムになったら、
BSDライセンスに移行することも考えています。マシになればね。

そのほか、こまごましたもの

開発環境

WindowsXP SP2
SharpDevelop 1.1
Visual C# 2005 Express Edition → SharpDevelop 2.0
PenM 2.13GHz
メモリ512MB

更新履歴

2006/1/25
 対応状況
  虚数の四則演算
  ウィンドウの大きさ変更対応
  実数の三角関数
  複素数の対数関数
 バグ対応
  実数を第2項以降に含む演算がおかしいのに対処。

2005/12/23 1.0
 初公開。
  対応状況
  実数の四則演算+剰余、
  三角数、二乗、三乗、小数切捨て
  テキストボックスのフォント・前景色・背景色の設定

ソースコード

 一応公開(≒後悔)しています。
解凍フォルダ内の「src」フォルダがあると思いますが、それです。
まぁヘボヘボですがご参考までに。