関数を使った計算で、正しく計算が行われない場合が見つかりました。
複数の関数を四則演算子で結合し、その引数部分に乗除計算を含ませた式を設定した場合、
正しく計算が出来ない場合があります。具体例として以下の様な場合が見つかりました。
式
sin(t-x/d)+sin(t+x/d)
の計算で t= 0 とすると答えは( xやdに何を代入しても)0のはずですが0にならない。
(t = 0以外の値の時も正しく計算できない)
なおsin( t-x )+sin( t+x )や、sin(t-x/d)など単独の計算は、問題なく出来ます。
( , )を使った計算で、正しく計算が行われない場合が見つかりました。
多数の括弧を入れ子にした場合、問題が起きるようです。具体例としては
( 1 + ( (2*(a*b) + 1 )+a +1*2) )*x
を計算しようとすると、 1 + ( 2*a*b + 1 +a +1*2 )*x が計算されてしまいます。
なお、上の式で最後の *x がない場合や、括弧内の最後の項1*2が単一の項の場合は正しく認識されます。
Ver.0.5b以前に共通のバグがみつかりました。
先頭を、−で始める式(例えば -1*aなど)や 、z*(-a)
のように括弧の直後に−が来る式を入力する時に「これの配列は、オーバーしとるぞ」という
エラーメッセージが出る事があります。
このような場合は例えば、上の例でいうと-1で1の代わりに1.0や1.00という風に入力したり、-aでaの代わりに
例えばabcなど、一字以上の変数名を入力してみて下さい。
なおこのバグは数関計with Graph Ver1.0でも発生します。
Ver.0.5c以前に共通のバグが、二つみつかりました。
1.先頭を、+で始める式(例えば +1*aなど)や 、z*(+a)
のように括弧の直後に+が来る式を入力する時に「これの配列は、オーバーしとるぞ」という
エラーメッセージが出る事があります。
このような場合は例えば、上の例でいうと+1で1の代わりに+1.0や+1.00という風に入力したり、+aでaの代わりに
例えばabcなど、一字以上の変数名を入力するか、+をつけないようにしてみて下さい。
2.具体例をあげて説明します。例えば
-0.3*x^2+1
を計算しようとすると、 -(0.3*x^2 + 1 )が計算されてしまいます。
このような事が起きた場合は、引き算を使うのを止めて、代わりに(-1)*を
使うようにしてみてください。
以上の二つのバグは数関計with Graph Ver1.0でも発生します。
Ver.1.0以前に共通のバグが、みつかりました。
総和(Σ計算)をする場合に、計算式に引数が二つ以上の関数(Ver1.0以前ではlogのみ)が含まれていると「これは式になっていない」
という警告メッセージが出て計算が出来ません。
・具体例.....sigma[log(2,2^n),n(0,5)]
また逆に引数が二つ以上の関数の第一引数に総和(Σ計算)を使うと、やはり警告メッセージが出て計算が出来ません。
Ver1.0のバグを修正しユーザ定義関数の機能を追加した数関計Ver1.5を公開しました。
また数関計with Graphについても同じバグがありましたが、これは。数関計with GraphのVer2.0にて
修正済みです。
なおVer0.5c以前に発生したバグについてはすべて修正済みです。