Symja运算符
+ 加
- 减
* 乘
/ 除
^ 幂
. 矩阵乘
";"表示一个语句的结束。
多语句计算结束后返回最后一个语句的值。
例:100!;32+8+2;
返回42 .
Symja标识符
Symja中的内建函数或常量都以首字母大写其他字母小写,函数的参数在[]内 。
如:Sin[], Cos[], Expand[], Inverse[], E, Pi, Degree 等。
用户自定义的函数要求以$为名字的首字母,其他大小写无所谓。
在Symja对大小写敏感。
例:$foo[x*y], $Foo[x*y], $FOO[x*y] 都是不一样的。
Symja字符串
字符床与java一样。在" "中。例:"Hello world".
Symja表达式类型
类型 | 描述 | 例如输入 |
Integer | 整数 | 42 |
Rational | 有理数 | 13/17 |
Complex | 复数 | 2+I*(1/3) |
Real | 双精度值 | 0.5 |
Complex Real | 复双精度值 | 0.5-I*0.25 |
Evaluation Precedence | 用( )控制计算优先级 | (a+b)*c |
Lists | {}中存放列表元素 | {a, b, c, d} |
Vectors | 向量类似于列表, 但是不能在 { ... }中存放子列 | {1, 2, 3, 4} |
Matrices | 用子列表示矩阵的行 | {{1, 2}, {3, 4}} |
Predefined Functions | 预定义函数名首字母大写,参数在 [ ... ]中 | Sin[0], PrimeQ[13] |
Predefined Constants | 预定义常量名,首字母大写 | Degree, E, Pi, False, True, ... |
Userdefined variables | 自定义变量之前加$ | $a=42 |
Userdefined rules | 自定义函数之前加$ | $f{x_,y_]:={x,y} |
Pattern Symbols | patterns end with a preceding '_ ' and could have a constraint | $f[x_IntegerQ]:={x} |
Strings | 字符串在" "中 | "Hello World" |
Slots | '# '后面接一个数字 | # or #2 |
Pure Functions | 用&运算符执行纯函数 | (#^3)&[x] gives x^3 |
Parts of an expression | 取出表达式的部分expression[[index]] | {a, b, c, d}[[2]] gives b |
应用示例
多项式
a+a+4*b^2+3*b^2
整数分解
FactorInteger[2^15-5]
多项式分解
Factor[-1+x^16]
多项式展开
Expand[(-1+x)*(1+x)*(1+x^2)*(1+x^4)*(1+x^8)]
求导
D[Sin[x^3],x]
矩阵求逆
Inverse[{{1,2},{3,4}}]
行列式
Det[{{1,2},{3,4}}]
更多语法内容参看 JUnit test cases