|
SOLUTIONS
|
MATHEMATICA 組込みシンボル
Assert
Assert[test]
test がTrueであるというアサーションを表す.アサーションが有効になると,アサーションがあるたびに test が評価される.test がTrueでなければ,アサーションの失敗が生成される.
Assert[test, tag]
アサーションが失敗した場合にそれを指し示すタグを指定する.
詳細詳細
- アサーションはしばしばコードに置かれ,プログラマーの想定を表しチェックする.
- デフォルトで,通常の Mathematica セッションではアサーションは無効になっているが Mathematica デバッガでは有効になっている.
- On[Assert]とすると Mathematica セッションでのアサーションが有効になり,アサーションが失敗するたびにメッセージが表示されるようになる.
- Assertがファイルに含まれていると,そのファイル名とアサーションがある行番号がアサーションのタグとして自動的に使われる.
- Mathematica デバッガでは,アサーションが失敗するとデフォルトでブレークポイントが作られる.
- $AssertFunctionは test を評価してもTrueにならない場合にAssert[test, ...]に適用する関数を与える.
例題例題すべて開くすべて閉じる
例 (3)例 (3)
計算の進行に伴う一時的な結果に依存するアサーションを含む関数を定義する:
| In[1]:= |
アサーションが無効になっているので,以下ではアサーションのテストは行われない:
| In[2]:= |
| Out[2]= |
Onでアサーションが有効になるとメッセージが出される:
| In[4]:= |
アサーション付きの関数を含むパッケージをロードすると,パッケージ名と行番号が記憶される:
| In[2]:= |
次は,行の情報とパッケージ名がAssert式にどのように保存されているかを示している:
これで,一旦アサーションがトリガされるとパッケージ名とアサーションの場所を示す行番号がメッセージで示されるようになる:
| In[5]:= |
アサーションが失敗する場合には$AssertFunctionに割当てを行って動作を変更することができる.この関数はアサーションが失敗すると例外を投げる:
| In[1]:= |
| In[2]:= |
| In[3]:= |
| Out[3]= |
| In[4]:= |
バージョン 8 の新機能
Mathematica 9 is now available!
New to Mathematica?
Find your learning path »
Have a question?
Ask support »

