Các phép toán trong MapleMột số thao tác với biểu thức MỘT SỐ CÂU LỆNH TÍNH TOÁN SỐ HỌCMột số câu lệnh hình học phẳng Một số câu lệnh làm việc với không gian Một số lệnh tính toán giải tích BÀI TẬP LUYỆ TẬP Sử dụng phần mềm Maple để giải những bài toán sau đây: 1. Chọn một số tự nhiên cụ thể tương đối lớn, kiểm trasố đó có là số nguyên tố hay không? Trong trường hợp không là số nguyên tố, hãy phân tích số đó ra các thừa số nguyên tố. 2. Vẽ đồ thị hàm số f(x) = ... với f(x) là một đa thứcbậc cao, hệ số bằng chữ ... 3. Phân tích đa thức f(x) với f(x) là đa thức bậc cao ở trên, hệ số bằng số cụ thể. 4. Giải phương trình f(x) = 0 với f(x) là đa thức bậc cao ở trên, hệ số bằng số. 5. Vẽ đồ thị của một hàm số phân thức (bậc hai trên bậc nhất) 6. Vẽ đồ thị của f(x) = ln(ex); 7. Vẽ đồ thị của f(x) = x(13); Gợi ý : Dùng surd(x,3);
Trang 1CÂU LỆH TROG MAPLE
STT
2 simplify(%) trả về biểu thức rút gọn, ứng với kết quả của lệnh ngay
trước đó
3 evalf(%) Đưa kết quả của lệnh trước đó ra dạng số thực
4 abs; Lấy giá trị tuyệt đối
5 exp(k); ek; k:=2;
6 f:=x^4-1;
V:= 4/3*Pi*r^3; Khai báo hàm số (f(x) = x4-1), biểu thức
7 solve(f=0); Giải phương trình f(x) = 0
8 solve(f>=0); Giải bất phương trình f(x) ≥ 0
9 factor(f); Phân tích biểu thức - đa thức f(x) thành tích
10 int(Q,x); Tìm nguyên hàm của Q
11 int(Q, x=0 1); Tính tích phân của Q với cận x: 0→1
12 diff(sin(x),x); Tính đạo hàm của hàm số (sinx)
13 plot(f,x) Vẽ đồ thị của hàm số f(x)
14
plot3d(x^2+y^2,x=-2 2,y=-2 2);
Vẽ đồ thị 3D của hàm số 2 biến Z = x2+y2 với x∈(-2;2) và y∈(-2;2)
15 ifactor(n); Phân tích n ra thừa số nguyên tố
16 nextprime(n); Tìm số nguyên tố đứng ngay sau n
17 prevprime(n); Tìm số nguyên tố đứng ngay trước n
18 isprime(n); Kiểm tra xem n có phải số nguyên tố không
19 round(x); Làm tròn đại lượng x đến số nguyên gần nhất
20 trunc(x); Xác định phần nguyên của x
21 frac(x); Xác định phần thập phân của x
22 iquo(p, q); Xác định thương của phép chia p cho q (p, q ∈ Z)
23 irem(p, q); Xác định phần dư của phép chia p cho q
24 with(geometry); Mở gói lệnh Hình học phẳng
25 EnvHorizontalName:=`x`; Khai báo trục hoành
26 EnvHorizontalName:=`y`; Khai báo trục tung
27
point(A,3,6),point(B,-9,4),point(C,-5,1);
Khai báo các điểm A, B, C với tọa độ tương ứng
28 coordinates(A),coordinate
s(B),coordinates(C);
Hiển thị tọa độ của các điểm A,B,C
29 midpoint(M, A, B); Tìm tọa độ của trung điểm M của AB
30 triangle(ABC,[point(A,3,5),
point(B,-9,4),point(C,-5,1)]);
Xác định tam giác với các đỉnh A, B, C
31 area(ABC); Tính diện tích tam giác ABC
Trang 2* Các phép toán trong Maple
Ký hiệu phép toán trong MAPLE giống với các ngôn ngữ lập trình thông thường, ngoại trừ trường hợp dấu mũ ^
Phép cộng +; phép trừ -; phép nhân *; phép chia /; phép lũy thừa ^;
Phép lấy căn bậc hai sqrt
Phép lấy giá trị tuyệt đối abs
+ Lệnh Simplify(%) trả về biểu thức rút gọn, % ở đây tương ứng với kết quả của
lệnh ngay trước đó Kết quả của 1/2*3 là 3/2, vì không thể rút gọn được nữa nên kết quả trả về vẫn là 3/2
+ Lệnh evalf(%); -> đưa kết quả của lệnh trước đó ra dạng số thực Kết quả của 3 + sqrt(3); là (3+ căn 3) Ta không thể rút gọn được kết quả này nhưng tính ra số thực thì được (độ chính xác ngầm định là 10 chữ số)
+ Lệnh abs(Pi-7); - như ta đã biết abs là hàm tính giá trị tuyệt đối, vì vậy abs(Pi-7)
sẽ trả về 7-Pi (Pi khoảng 3.14)
+ exp(1); = e^1, đây là cách biểu hiện số e (khoảng 2.718281828) trong MAPLE,
để biểu thị e^k bạn xài exp(k)
Dưới đây là một vài ví dụ:
>3*4; 2+10*90;
>(6-4)*12;
>16^(3/4);
>16^3/4;
>1/2*3;
>simplify(%);
>3+sqrt(3);
>evalf(%);
>abs(Pi-7);
>exp(1); exp(k);
Giải thích :
Trang 3+ Khi tính toán một biểu thức, nếu không có cặp ngoặc xác định, MAPLE luôn tính phép mũ ^ trước, tiếp đó rồi tới phép chia, rồi phép nhân, cuối cùng là cộng và trừ
Vì thế 2+10*90 sẽ là 902, 16^3/4 tương đương với (16^3)/4, còn 1/2*3 tương đương với (1/2)*3
Một số thao tác với biểu thức
Biểu thức được gán cho một biến
>V:= 4/3*Pi*r^3;
Thêm một vài lệnh khác
>r:=2;
>r;
>V;
>evalf(%);
Để free or unassign một biến, ví dụ unassign biến r, gõ lệnh sau:
>r:='r';
Để thấy tác dụng của lệnh này, bạn viết tiếp biểu thức chu vi hình tròn nhé:
>C:=2*Pi*r;
>r:=3;
>C;
Giả sử bạn không unassign biến r, C sẽ có giá trị 4*Pi chứ không phải biểu
thức 2*Pi*r Khi đó câu lệnh C; cuối cùng trả về 4*Pi thay vì 6*Pi (với r=3) như mong đợi
Gõ tiếp nào
>f:=x^4-1;
>solve(f=0);
Phân tích : >factor(f);
Giải PT, HPT, BPT: >solve(f=3);
>g:=(x-4)*(x-3)*(x-5)^4;
>g:=(x-1)*(x+2)*(x-3)^2;
>expand(g);
Trang 4Tính tổng: sum
sum(k^2, k=0 4);
sum(a^2-3*a, a=0 44);
Lệnh khai triển biểu thức “nhân phá ra” expand
Lệnh giải bất phương trình: solve( x^2+x>0, x );
Lệnh tìm cực trị của biểu thức: minimize(x^2+y^2+3);
minimize(abs(x)+abs(7*x+3)-abs(x-5),x);
T:=(abs(x)+abs(7*x+3)-abs(x-5));
minimize(T,x);
maximize(T,x=-4 4);
Tìm cực trị theo điều kiện:
with(simplex);
cnsts := {3*x+4*y-3*z <= 23, 5*x-4*y-3*z <= 10,7*x+4*y+11*z <= 30};
obj := -x + y + 2*z;
maximize(obj,cnsts union {x>=0,y>=0,z>=0});
Hiển thị {x = 0, y = 49/8, z = 1/2}
KHAI BÁO HÀM TRONG MAPLE VÀ LỆNH VẼ ĐỒ THN PLOT
Ví dụ 1: Vẽ đồ thị hàm số y = x2 + x -12
Bước 1: Khai báo hàm số
Hàm số f(x) = x2 + x -12 được khai báo bằng ký hiệu f:=x-> x^2 + x -12;
> v:= x^2+x; Khai báo hàm số v = x2 + x
> x:=2; v; x:=3; v; x:=4; v;
Hai dòng lệnh trên xác định các giá trị của v với x=2, x=3, và x=4 Mỗi lần tính
ta lại phải gán lại x khá dài dòng
Hàm f dưới đây khắc phục được nhược điểm này
> f:=x-> x^2 + x -12;
Trang 5Khai báo hàm số y = x2 + x -12 f := x → x2 + − x 12
f ở đây là một hàm Ở đây để tính các giá trị của f tại 2, 3, 4 Ta chỉ việc thực hiện tương ứng lệnh tính các giá trị f(2), f(3), f(4)
> f(2); f(3); f(4); Tính giá trị của hàm số tại x= 2, x = 3, x = 4
> f(x-h);
Chuyển thành hàm số hợp của biến (x+h) (x + h) 2 + + − x h 12
> simplify(%);
Khai triển hàm số hợp của biến (x+h) x2 + 2 x h + + + − h2 x h 12
> factor(f(x)); factor(v);
Phân tích đa thức f(x) thành tích các nhân tử f(x) = (x+4)(x-3) (x + 4 () x − 3)
expand(v);
> solve(f(x)=0);
Giải phương trình f(x) = 0 tìm được x = 3; x = - 4 3 -4 ,
> solve(f(x)=8);
Giải phương trình f(x) = 8 tìm được x = 4; x = - 5 4 -5 ,
> solve(v=9);
> solve(9*x^7-3*x^3+5*x^2-11=0);
Bước 2: Vẽ đồ thị hàm số
> plot(f(x),x); Vẽ đồ thị của hàm số f(x) đã khai báo ở trên: f(x) = x2 + x -12
plot(f(x),x=-5 5,-4 4); Vẽ đồ thị của f(x) với khoảng nhìn thấy x∈(-5;5), y∈(-4;4)
> plot(v,x); Vẽ đồ thị của hàm số (đã khai báo ở trên): v(x) = x2 + x
> plot(v,x=-13 13); Vẽ đồ thị v(x) với x∈(-13; 13)
Trang 6Ví dụ 2: Vẽ đồ thị hàm số f(x) = x3 - 3x2 + 2; g(x) - hàm phân thức
N hập hàm số với câu lệnh
> f:= x-> x^3 - 3*x^2 + 2; y:=f(x); f := x → x3 − +
3 x2 2
> g:= x-> (2*x^2-3*x+1)/(x+1); g := x → 2 x2 − 3 x + 1
+
x 1
> h:= x-> (3*x+1)/(x-1);
Sau khi đã khai báo hàm số y, chẳng hạn:
> f:= x-> x^3 - 3*x^2 + 2; y:=f(x);
ta có thể vẽ đồ thị hàm số bằng lệnh plot theo mẫu dưới đây (chú ý: ở đây ta đã khai báo để máy tính vẽ đồ thị thuộc phạm vi: -1≤ x ≤ 4; -12 ≤ y ≤ 8 Do vậy, trong trường hợp cần thiết, ta phải khai báo phạm vi rộng hơn để có thể xem toàn bộ đồ thị)
> plot(y,x=-1 4,-12 8);
> plot(g(x),x=0 10,-1 10);
> plot(g(x),x=0 3,-4 8);
> plot(h(x),x=-10 10,-10 10);
Ví dụ:
a) Khai báo hàm số k(x)
> k:=x-> x^3-3*x^2 +2; k := x → x3 − +
3 x2 2
b) Vẽ đồ thị hàm số k(x) sau đó dán thêm các mũi tên đầu các trục, nhóm lại và copy
sang word:
Trang 7Ta cũng có thể cho hàm từng khúc bằng câu lệnh “piecewise”
> k:= piecewise(x<=-1, x^2 -1, x<=1, 1-abs(x), sin(x-1)/x);
:=
k
−
x2 1 x ≤ -1 −
sin − x 1
x otherwise
Maple cũng có thể cho hàm dạng tổng quát, sau đó cụ thể bằng lệnh gán các hệ
số bởi các số cụ thể;
> f:= x->a*x^3+b*x^2+c*x+d;
gõ enter, máy xuất hiện thông báo: f := x → a x3 + b x2 + c x + d
Ta lại tiếp tục khai báo giá trị cụ thể của các chữ a, b, c, d
> a:=2;b:=3;c:=4;d:=-9;f =f(x);
gõ enter, máy xuất hiện thông báo:
:=
a 2 b := 3 c := 4 d := -9 f = 2 x3 + 3 x2 + 4 x − 9
Ví dụ 3: Vẽ đồ thị hàm y = sin(x)
> plot(sin(x),x=-2*Pi 2*Pi);
Trang 8Vẽ tiêp tuyên Lenh showtangent
> with(student);
> showtangent(x^2+5, x = 2);
Trang 9MỘT SỐ CÂU LỆH TÍH TOÁ SỐ HỌC
[> round(x); làm tròn đại lượng x đến số nguyên gần nhất
round(3.45); → 3
[> trunc(x); cho biết phần nguyên của x
trunc (-3.45); → -3
[> frac(x); cho biết phần thập phân của x
frac(2.7); → .7
frac(-5.19); → -.19
[> iquo(p, q); cho biết thương của phép chia p cho q (p, q ∈ Z)
iquo(5,3); → 1
[> irem(p, q); cho biết phần dư của phép chia p chp q
irem(5,3); → 2
[> isprime(n); kiểm tra xem n có phải số nguyên tố không
isprime(23); → true
isprime(33); → false
[> nextprime(n); cho biết số nguyên tố đứng ngay sau n
nextprime(13); → 17
[> prevprime(n); cho biết số nguyên tố đứng ngay trước n
prevprime(23); → 19
[> ifactor(n); phân tích n ra thừa số nguyên tố
ifactor(2011); → (2011)
ifactor(2012); → (2) 2
.(503)
Để phân tích đa thức thành nhân tử (hoặc rút gọn biểu thức), ta sử dụng lệnh
[> factor(đa thức); [> factor(biểu thức);
Mẫu câu lệnh như sau:
> factor(x^3+3*x^2+3*x+1); (x + 1) 3
> factor(12*x*y-12*x*z+3*x^2*y-3*x^2*z); 3x( y − z () 4 + x)
> factor(2*x^2+2*y^2-x^2*z+z-y^2*z-2); − (x2 + y2 − 1 ( ) z − 2)
Trang 10> x^4-x^3-14*x^2-26*x-20
=factor(x^4-x^3-14*x^2-26*x-20);
=
x4 x3 14 x2 26 x 20 (x + 2 () x − 5 () x2 + 2 x + 2)
> (x^3-x^2*y-x*y^2+y^3)/(x^3+x^2*y-x*y^2-y^3)
=factor((x^3-x^2*y-x*y^2+y^3)/(x^3+x^2*y-x*y^2-y^3));
=
x3 x2y x y2 y3
x3 x2y x y2 y3
−
+
Để khai triển biểu thức ta sử dụng lệnh [>expand (biểu thức);
> expand((x+2)*(x-5)*(x^2+2*x+2));
x4 x3 14 x2 26 x 20 Giải phương trình bằng Maple với mẫu câu lệnh
> solve(x^2-3*x+2,{x}); {x = 2} ,{x = 1}
Ta cũng có thể giải phương trình sau khi đã khai báo biểu thức f(x), hoặc hàm
số f(x) như sau:
> f:= x-> x^3 - 3*x^2 + 2; y:=f(x);
> solve(y,{x});
Trang 11Một số câu lệnh hình học phẳng
Để bắt đầu thực hiện tất cả các câu lệnh trong hình học phẳng, chúng ta phải
mở gói hình học phẳng bằng câu lệnh:
[> with(geometry);
Tên trục toạ độ phải được khai báo khi xác định đối tượng
N ếu không khai báo các trục toạ độ phải sử dụng câu lệnh: _EnvHorizontalN ame và _EnvVerticalN ame ở đầu chương trình; nếu Maple nhắc ta nhập tên trục toạ độ, ta nhập như sau:
[> EnvHorizontalName:=`x`;
[> EnvVerticalName:=`y`;
hoặc cùng lúc: EnvHorizontalName:=`x`,EnvVerticalName:=`y`;
MỘT SỐ CÂU LỆH CƠ BẢ CỦA MAPLE TROG HÌH HỌC PHẲG:
* Khai báo điểm khi biết toạ độ:
Để khai báo toạ độ điểm A(x; y) ta dùng câu lệnh:
[> point(A,x,y);
Trong đó x là hoành độ, y là tung độ
Để thực hiện lệnh, ta nhấn phím Enter trên bàn phím
Ví dụ: Để khai báo toạ độ điểm A(3; 6), điểm B(-2;-5) ta dùng câu lệnh:
[> point(A,3,6); → hiển thị A
point(B,-9,4); → hiển thị B
point(C,-5,1); → hiển thị C
hoặc có thể khai báo cùng lúc nhiều điểm, chẳng hạn;
point(A,3,6),point(B,-9,4),point(C,-5,1);
Để hiện toạ độ điểm A ta dùng lệnh:
[> coordinates(A); → Kết quả cho ta A=[3,6]
coordinates(B); → Kết quả cho ta B=[-9,4]
coordinates(C); → Kết quả cho ta C=[-5,1]
hoặc có thể cùng lúc hiển thị tọa độ của nhiều điểm, chẳng hạn;
coordinates(A),coordinates(B),coordinates(C);
* Tìm toạ độ trung điểm của đoạn thẳng:
Để tìm toạ độ trung điểm của đoạn thẳng AB ta khai báo toạ độ hai điểm A, B rồi dùng câu lệnh:
[> midpoint(M, A, B); →→ M
Ở đây M là trung điểm của đoạn thẳng AB
midpoint(, B,C);
hoặc có thể cùng lúc xác định các trung điểm, chẳng hạn;
midpoint(M, A,B),midpoint(, B,C);midpoint(P, C,A);
Trang 12* Để hiện toạ độ của điểm M ta dùng lệnh:
[>coordinates(M); →→ [-3,9
2]
coordinates();
hoặc có thể cùng lúc:
coordinates(M),coordinates(N ),coordinates(P);
→ hiển thị [ -3 5 , ] , ,
-7 ,5
2
-1 ,7
2
* Khai báo một tam giác khi biết toạ độ ba đỉnh:
Để khai báo tam giác ABC khi biết toạ độ các đỉnh A, B, C ta dùng lệnh:
[>Triangle(ABC, [point(A,xA, yA), point(B,xB, yB), point(C,xC, yC)]);
Ví dụ: Để khai báo tam giác ABC khi biết toạ độ các đỉnh A(3;5), B(-9;4), C(-5;1) ta dùng lệnh: [>with(geometry):
triangle(ABC,[point(A,xA,yA),point(B,xB,yB),point(C,xC,yC)]);
triangle(ABC,[point(A,3,5),point(B,-9,4),point(C,-5,1)]);
triangle(MN P,[point(M,-3,5),point(N ,-7,5/2),point(P,-1,7/2)]);
Sau khi khai báo tam giác ta có thể thực hiện các lệnh tiếp theo:
* Tính diện tích tam giác ABC khi biết toạ độ 3 đỉnh:
Để tính diện tích tam giác ABC khi biết toạ độ 3 đỉnh, sau khi khai báo tam giác, ta dùng lệnh:
[> area(ABC);
area(MNP);
Một số câu lệnh làm việc với không gian Hàm hai biến
Đồ thị 3D
Lệnh: plot3d;
plot3d(sin(x*y),x=-Pi Pi,y=-1 1);
plot3d(x^2+y^2,x=-2 2,y=-2 2);
Trang 13Một số lệnh tính toán giải tích
Tính đạo hàm: diff
diff(sin(x),x);
Q:=x^4-3*x^3+2*x^2-7*x+11;
diff(x^4-3*x^3+2*x^2-7*x+11,x); hoặc diff(Q,x);
Tính nguyên hàm và tích phân: lệnh int
int(Q,x);
int(sin(x),x);
int(sin(x), x=0 Pi );
int(Q, x=0 1);
Trang 14BÀI TẬP LUYỆ TẬP
Sử dụng phần mềm Maple để giải những bài toán sau đây:
1 Chọn một số tự nhiên cụ thể tương đối lớn, kiểm tra số đó có là số nguyên tố hay không? Trong trường hợp không là số nguyên tố, hãy phân tích số đó ra các thừa số nguyên tố
2 Vẽ đồ thị hàm số f(x) = với f(x) là một đa thức bậc cao, hệ số bằng chữ
3 Phân tích đa thức f(x) với f(x) là đa thức bậc cao ở trên, hệ số bằng số cụ thể
4 Giải phương trình f(x) = 0 với f(x) là đa thức bậc cao ở trên, hệ số bằng số
5 Vẽ đồ thị của một hàm số phân thức (bậc hai trên bậc nhất)
6 Vẽ đồ thị của f(x) = ln(e^x);
7 Vẽ đồ thị của f(x) = x^(1/3); Gợi ý : Dùng surd(x,3);