Maple第二章 数值计算(1)

# Malpe的最基本的计算是数值计算,与其他计算器不同的是,Maple可以自己区分整数、有理数计算和无理数、浮点数的区别。进入Maple之后,在工作区中按照自然语法输入表达式,以分号结束,即可进行计算。这点我认为是Maple和MATLAB相比最好的地方,即输入符合书写习惯。
# 2.1整数和有理数
> 1023 + 43251;
                             44274

> 21 - 4/3;
                               59/3
> 32*(2 - 1/2)*(3 + 1/3)/21;
                              160/21 
# Maple中变量和数字之间乘法的表示有三种,一个是*,一个是
*(数学输入),一个是用空格代替。

d41867865c1d4c259d4e47679844ef09.png
# 不加乘号没办法表示乘积,但是可以用空格
# Maple能计算几乎很大的整数
# 除此之外,Maple还有许多函数可以用来处理整数的问题

abssignmaxminfactorial
iremiquomodpmodsmod
isqrtirootisprimeifactorifactors
igcdilcmigcdexiratreconrand

# 这些函数都是内置在maple中的,可以通过查找搜索了解相关函数的使用,而且maple的帮助检索完全是离线的,不需要网络就可以搜索查看,在工具栏最右侧搜索框中可以直接检索相应函数或者命令,非常方便.
# 这点对比MATLAB在联网和离线情况下检索命令结果有差别,以及离线检索还需要再命令行窗口输入help相比,maple真的很方便.
# 下面举一些例子
> a := 1234;
> b := 56;
> q := iquo(a, b);
                            q := 22
> r := irem(a, b);
                             r := 2
> a = b*q + r;
                          1234 = 1234
> igcd(a, b);
                               2
> igcdex(a, b, 's', 't');
                               2
> a*s + b*t;
                               2
> t;
                              -22
# s,t加了单引号,含义是抑制对变量求值,在这里用来记录igcdex的另外两个返回值.
# Maple提供了三种取模的算术,mod,modp,mods.下面是帮助中引用的部分:
# mod - computation with polynomials over the integers modulo m取模
# modp - computation over the integers modulo m using positive representation正表示
# mods - computation over the integers modulo m using symmetric representation对称表示
> 11 mod 7;
                               4
> 11 mod 7;
                               4
# 上面是调用mod的两种方式,第二种输入的是键盘左上角Esc下面那个" ` ".第一种是把mod作为中置算子使用,符合自然输入习惯,第二种是把mod作为函数调用,用`(左单引号)括起来.
> modp(11, 7);
                               4
# modp表示的是模n的算术,那么他返回的结果是[0,|n|-1]区间中的正整数,mods的结果是在下列关于0对称的序列中
# -[(|n|-1)/2],...-1,0,1...[|n|/2-1],[|n|/2]
> `mod` := mods;
> 11 mod 7;
                               -3
# 在与整数计算有关的命令中,有一个比较特殊的命令,iratrecon,它的作用是从一个有理数的模m的像u重新构造出原有理数.
# 用法为iratrecon(u,m,N,D,'n','d')
# 其中N,D是有理数分子和分母的上界,如果返回的值为真,则返回的n,d将满足n/d≡u(mod m)且|n|≤N,|d|≤D
> m := 13;
                            m := 13
> u := 1/2 mod m;
                            u := -6
> iratrecon(u, m);
                               1/2
> iratrecon(u, m, 2, 2);
                               1/2
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值