Khám phá Maple 11 - Chương 6: Đa thức
ĐA THỨC
I. CÁC PHÉP TOÁN TRÊN ĐA THỨC.
Với các đa thức ta có thể thực hiện các phép toán như ‘cộng’, ‘trừ’, ‘nhân’, ‘chia’
các đa thức.
Bạn đang xem trước 20 trang mẫu tài liệu Khám phá Maple 11 - Chương 6: Đa thức, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
1
ĐA THỨC
I. CÁC PHÉP TOÁN TRÊN ĐA THỨC.
Với các đa thức ta có thể thực hiện các phép toán như ‘cộng’, ‘trừ’, ‘nhân’, ‘chia’
các đa thức.
Ví dụ : Cho hai đa thức ( ) ( )2 3 23 2; 4 3 2f x x x g x x x x= - + = + - - .
> f:=x^2-3*x+2;g:=4*x^3+x^2-3*x-2;
:= f - + x2 3 x 2
:= g + - - 4 x3 x2 3 x 2
Cộng hai đa thức trên ta được:
> 'f+g'=f+g;
= + f g - + 2 x2 6 x 4 x3
Trừ đa thức f cho đa thức g ta được:
> 'f-g'=f-g;
= - f g - 4 4 x3
Nhân hai đa thức trên ta được:
> 'f.g'=f*g;
= . f g ( ) - + x2 3 x 2 ( ) + - - 4 x3 x2 3 x 2
Để xem kết quả khai triển ta dùng hàm > expand(f.g);
> 'f.g'=expand(f*g);
= . f g - + + - 4 x5 11 x4 2 x3 9 x2 4
Chia đa thức f cho đa thức g ta được:
> 'f/g'=f/g;
=
f
g
- + x2 3 x 2
+ - - 4 x3 x2 3 x 2
Dễ nhận thấy f và g có chung nghiệm 1x = . Bây giờ để tối giản phân thức f g ta dùng
lệnh
> normal(f/g);
> 'f/g'=normal(f/g);
=
f
g
- x 2
+ + 4 x2 5 x 2
II. CÁC HÀM LIÊN QUAN ĐẾN ĐA THỨC.
1. Sắp xếp lại một đa thức, danh sách.
Cú pháp: > sort(L)
> sort(L, F)
> sort(A)
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
2
> sort(A, V, opt1, opt2, ... )
Trong đó: - L : là một danh sách các giá trị cần sắp xếp.
- A : là một biểu thức đại số.
Ở đây, tôi chỉ giới thiệu việc sắp xếp đa thức.
Ví dụ: Xét đa thức ( ) 2 3 42 5 7 4f x x x x x= - + - + .
Ta sắp xếp đa thức trên như sau:
> restart;f:=x-2*x^2+5*x^3-7+4*x^4;
:= f - + - + x 2 x2 5 x3 7 4 x4
> f:=sort(f,x);
:= f + - + - 4 x4 5 x3 2 x2 x 7
Để sắp xếp f theo chiều tăng dần (giảm dần) của bậc ta khai báo thêm argument “
ascending” (“descending”).
> f:=sort(f,x,ascending);
:= f - + - + + 7 x 2 x2 5 x3 4 x4
Ví dụ: Xét đa thức ( ) 3 2 2 3p x y x y x= + + .
+Sắp xếp đa thức trên theo chiều giảm dần bậc của biến x, ta được:
> restart;p := y^3+y^2*x^2+x^3:
sort(p,x,descending);
+ + x3 y2 x2 y3
+Sắp xếp đa thức trên theo chiều tăng dần bậc của biến y, ta được:
> sort(p,y,ascending);
+ + x3 x2 y2 y3
+Sắp xếp đa thức trên theo chiều tăng dần bậc của đa thức, ta được:
> sort(p,[x,y],ascending);
+ + y3 x3 x2 y2
+Sắp xếp đa thức trên theo chiều giảm dần bậc của đa thức, ta được:
> sort(p,[x,y],descending);
+ + x2 y2 x3 y3
Ví dụ: Cho đa thức ( ) 23 2 3g x x xy yz x= + - + - .
+Sắp xếp đa thức trên theo thứ tự biến x, y, z và bậc giảm dần, ta được:
> sort(g,[x,y,z],descending);
- + + - x2 2 x y 3 y z x 3
+Sắp xếp đa thức trên theo thứ tự biến x, z và bậc tăng dần, ta được:
> sort(g,[x,z],ascending);
- + - + + 3 3 y z 2 y x x x2
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
3
2. Nhóm các hệ số của các luỹ thừa cùng bậc của một đa thức.
Cú pháp: > collect(a, x, form, func) ;
Trong đó: - a : là một đa thức (biểu thức);
- x: là biến hoặc tập hợp các biến hoặc một hàm;
- func: là thủ tục (thường là simplify hoặc factor );
- form: là tên (thường là recursive (đệ quy) hoặc distributed (phân phối))
Ví dụ: Đơn gian biểu thức sau bằng cách nhóm các số hạng
( ) 2 23 5p x x mx mx x= + - + -
+Đơn giản biểu thức trên bằng cách nhóm các số hạng theo luỹ thừa của x:
> p:=x^2+3*m*x-5+m*x^2-x;
:= p + - + - x2 3 m x 5 m x2 x
> p:=collect(p,x);
:= p - + + 5 ( ) + m 1 x2 ( )- + 1 3 m x
+Sắp xếp biểu thức trên theo ẩn số x , ta được:
> p:=sort(p,x);
:= p + - ( ) + m 1 x2 ( )- + 1 3 m x 5
+Đơn giản biểu thức trên bằng cách nhóm các số hạng theo luỹ thừa của m:
> p:=collect(p,m);
:= p + - - ( ) + x2 3 x m x2 x 5
+Ta có thể dùng thêm hàm factor để phân tích các hệ số thành tích:
> p:=collect(p,m,factor);
:= p + - - x ( ) + x 3 m x2 x 5
Ví dụ: Cho biểu thức ( ) 2 2p x xy axy yx ayx x ax= + + - + + .
+Sắp xếp (đệ quy) biểu thức trên theo biến x,
các hệ số chứa y và được sắp xếp theo biến y:
> restart;p := x*y+a*x*y+y*x^2-a*y*x^2+x+a*x;
:= p + + - + + x y a x y y x2 a y x2 x a x
> p1:=collect(p,[x,y],recursive);
:= p1 + ( ) - 1 a y x2 ( ) + + ( ) + 1 a y 1 a x
+Sắp xếp (đệ quy) biểu thức trên theo biến y ,
các hệ số chứa x và được sắp xếp theo biến x:
> p2:=collect(p,[y,x],recursive);
:= p2 + ( ) + ( ) - 1 a x2 ( ) + 1 a x y ( ) + 1 a x
3. Phân tích một đa thức thành tích của các biểu thức đơn giản nhất.
Cú pháp: > factor(a, K) ;
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
4
Trong đó: - a: là một biểu thức (biểu thức hữu tỉ).
- K: là từ khoá real hoặc complex; hoặc một số chứa căn; hoặc RootOf.
Ví dụ: Phân tích đa thức sau thành tích ( ) 3 23 5 3f x x x x= - + - .
> restart;f:=x^3-3*x^2+5*x-3;
:= f - + - x3 3 x2 5 x 3
> f1:=factor(f);
:= f1 ( ) - x 1 ( ) - + x2 2 x 3
Tam thức 2 2 3x x- + không có nghiệm thực, nhưng có 2 ngiệm phức. Vậy nếu phân tích
đa thức f trên trường số phức ta sẻ được kết quả:
> f2:=factor(f,complex);
f2 ( ) - x + 1.000000000 1.414213562 I ( ) - x 1.000000000 :=
( ) - x - 1.000000000 1.414213562 I
Bằng cách tìm nghiệm của tam thức 2 2 3x x- + ta có:
> solve(x^2-2*x+3,{x});
,{ } = x + 1 2 I { } = x - 1 2 I
+Trên cơ sở đó, ta có thể phân tích f theo 2 và số phức i:
> f3:=factor(f,{sqrt(2),I});
:= f3 ( ) - + x 1 2 I ( ) - - x 1 2 I ( ) - x 1
Ta chú ý có sự khác biệt khi ta nhập ( ) 3 23 5 3.0f x x x x= - + - , kết quả phân tích sẽ là:
> f:=x^3-3*x^2+5*x-3.0;
:= f - + - x3 3 x2 5 x 3.0
> factor(f);
( ) - x 1.000000000 ( ) - + x2 2.000000000 x 2.999999999
Ví dụ: Xét đa thức ( ) 3 5g x x= + .
Nếu chỉ dùng lệnh >factor(g); ta được kết quả:
> g:=x^3+5;
:= g + x3 5
> factor(g);
+ x3 5
Nhưng nếu phân tích trên trường số phức (complex) ta được kết quả:
> factor(g,complex);
( ) + x 1.709975947 ( ) - x + 0.8549879733 1.480882610 I
( ) - x - 0.8549879733 1.480882610 I
Nếu nhập ( ) 3 5.0g x x= + , thì khi dùng lệnh >factor(g); ta sẻ được kết quả khác:
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
5
> g:=x^3+5.0;
:= g + x3 5.0
> factor(g);
( ) + x 1.709975947 ( ) - + x2 1.709975947 x 2.924017740
Nếu phân tích ( ) 3 5g x x= + theo 3 5 hay
1
35 ta được kết quả:
> factor(g,5^(1/3));
( ) - + x2 x 5
( )/1 3
5
( )/2 3
( ) + x 5
( )/1 3
Ví dụ: Xét đa thức ( ) 4 2p x x= - .
Nếu chỉ dùng lệnh >factor(g); ta được kết quả:
> p:=x^4-2;
:= p - x4 2
> factor(p);
- x4 2
Nhưng nếu phân tích trên trường số phức (complex) ta được kết quả:
> factor(p,complex);
( ) + x 1.189207115 ( ) + x 1.189207115 I ( ) - x 1.189207115 I ( ) - x 1.189207115
Nếu phân tích p theo 2 , ta được:
> factor(p,sqrt(2));
( ) + x2 2 ( ) - x2 2
Nếu phân tích p theo 4 2 (hay 142 ) và số phức i, ta được:
> factor(p,{root(2,4),I}); #{root(2,4) là 4 2 }
( ) + x 2
( )/1 4
I ( ) - x 2
( )/1 4
I ( ) - x 2
( )/1 4
( ) + x 2
( )/1 4
Cũng có thể nhập như sau:
> factor(p,{2^(1/4),I});
( ) + x 2
( )/1 4
I ( ) - x 2
( )/1 4
I ( ) - x 2
( )/1 4
( ) + x 2
( )/1 4
··· Ngoài hàm factor ta còn có thể dùng hàm split trong gói lệnh
with(polytools) để phân tích một biểu thức (đa thức) thành tích các biểu thức đơn
giản:
Cú pháp: > with(polytools):
> split(a,x,b);
Trong đó: - a: là biểu thức (đa thức);
- x : là biến.
- b: là biến được gán cho kết quả thu được.
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
6
Ví dụ: Phân tích biểu thức 2 1x x+ + thành tích.
Dùng gói lệnh trên và hàm split, ta có kết quả:
> with(polytools):
> split(x^2+x+1,x);
( ) - x ( )RootOf + + _Z2 _Z 1 ( ) + + x 1 ( )RootOf + + _Z2 _Z 1
Để thấy kết quả cụ thể hơn ta làm tiếp:
> allvalues({%});
,{ }æ
è
çç
ö
ø
÷÷ + - x
1
2
1
2
I 3 æ
è
çç
ö
ø
÷÷ + + x
1
2
1
2
I 3 { }æ
è
çç
ö
ø
÷÷ + - x
1
2
1
2
I 3 æ
è
çç
ö
ø
÷÷ + + x
1
2
1
2
I 3
Hoặc:
> evalf(%);
( ) + x - 0.5000000000 0.8660254040 I ( ) + x + 0.5000000000 0.8660254040 I ,
( ) + x - 0.5000000000 0.8660254040 I ( ) + x + 0.5000000000 0.8660254040 I
Nhận xét: Với gói lệnh này, kết quả thu được rất chi tiết, đầy đủ hơn so với dùng
hàm factor sau khi dùng thêm hàm allvalues({%});
4. Khai triển một đa thức.
Cú pháp: > expand(expr, expr1, expr2, ..., exprn);
Trong đó: - expr: là đa biểu thức đại số bất kì (dạng tích, luỹ thừa, lượng giác,)
muốn khai triển.
Ví dụ: Khai triển đa thức: ( ) ( )( ) 21 3 2p x x x x x= - + + -
> p := (x-1)*(3*x+2)+x^2-x;
:= p + - ( ) - x 1 ( ) + 3 x 2 x2 x
> p:=expand(p);
:= p - - 4 x2 2 x 2
Phân tích kết quả trên thành tích:
> factor(p);
2 ( ) + 2 x 1 ( ) - x 1
Sau đó khai triển kết quả thu được theo 1x - , ta được:
> expand(%,x-1);
+ - 4 ( ) - x 1 x 2 x 2
Ví dụ: Giải phương trình 2 1 3 3x x- + + = .
Theo phương pháp thông thường, ta giải phương trình này bằng cách bình phương
hai vế sau khi đã tìm tập xác định (điều kiện xác định) cho phương trình .
Điều kiện:
12 1 0 12
3 0 23
xx
x
x x
ì ³- ³ì ïÛ Û ³í í+ ³î ³ -ïî
.
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
7
Bây giờ nhập phương trình vào Maple cùng các bước giải phương trình trên như
sau:
> restart;eq:=sqrt(2*x-1)+sqrt(x+3)=3:eq;
= + - 2 x 1 + x 3 3
> `Binh phuong hai ve cua
PT:`;a:=(lhs(eq))^2:b:=(rhs(eq))^2:a=b;
Binh phuong hai ve cua PT:
= ( ) + - 2 x 1 + x 3 2 9
> `Khai trien ta duoc:`;a:=expand(a):a=b;
Khai trien ta duoc:
= + + 3 x 2 2 - 2 x 1 + x 3 9
> `PT tuong duong voi:`;c:=a-(op(1,a)+op(2,a)): b:=expand(b-
(op(1,a)+op(2,a))):c=b;
PT tuong duong voi:
= 2 - 2 x 1 + x 3 - 7 3 x
> `Binh phuong hai ve ta duoc:`;c:=c^2:b:=b^2:c=b;
Binh phuong hai ve ta duoc:
= 4 ( ) - 2 x 1 ( ) + x 3 ( ) - 7 3 x 2
> `Khai trien va rut gon, ta duoc PT tuong
duong:`;eq:=sort(expand(c-b),x):eq=0;
Khai trien va rut gon, ta duoc PT tuong duong:
= - + - x2 62 x 61 0
> `Tap nghiem cua PT nay la:`;T:={solve(eq, {x})};
Tap nghiem cua PT nay la:
:= T { },{ } = x 1 { } = x 61
Với đoạn lệnh trên, ta có thể giải các phương trình có dạng tương tự bằng cách
nhập lại phương trình trong dòng lệnh đầu tiên (khai báo eq:=).
Quý bạn đọc có thể giải các phương trình :
1) 3 1 3 1x x+ + = -
2) 1 5 1 3 2x x x- - - = -
5. Rút gọn hệ số, trích hệ số rút gọn của một đa thức.
a) Rút gọn hệ số của đa thức poly:
Cú pháp: > primpact(poly,x,’co’);
Trong đó: - poly: là đa thức
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
8
- x : là biến hoặc tập hợp các biến.
- co: là tên của hệ số cần làm gọn.
Ví dụ 1: Rút gọn hệ số của đa thức ( )
4
3 2 33 1
5 2
x x
p x x x= - + - + ta được:
> restart;p:=x^4/5-3*x^3+x^2-3*x/2+1;
:= p - + - +
1
5
x4 3 x3 x2
3
2
x 1
> primpart(p,x,'co'):`Da thuc rut gon`=%;
= Da thuc rut gon - + - + 2 x4 30 x3 10 x2 15 x 10
Nếu muốn biết “hệ số đã rút gọn” ta khai báo argumen ‘co’ trong câu lệnh:
> primpart(p,x,'co'):`Da thuc rut gon`=%;
= Da thuc rut gon - + - + 2 x4 30 x3 10 x2 15 x 10
> `He so rut gon`=co;
= He so rut gon
1
10
Ví dụ 2: Cho đa thức (nhiều biến) 2 2( , ) 3 6 12p x y xy x y y= + - .
Làm gọn đa thức trên theo biến x, ta được:
> restart;p:=3*x*y+6*x^2*y-12*y^2;
:= p + - 3 x y 6 x2 y 12 y2
>> primpart(p,x,'co'):`Da thuc rut gon`=%;`He so rut
gon`=co;
= Da thuc rut gon - + + 4 y x 2 x2
= He so rut gon 3 y
Làm gọn đa thức trên theo biến y, ta được:
> restart;p:=3*x*y+6*x^2*y-12*y^2;
:= p + - 3 x y 6 x2 y 12 y2
> primpart(p,y,'co'):`Da thuc rut gon`=%;`He so rut gon`=co;
= Da thuc rut gon + - x y 2 x2 y 4 y2
= He so rut gon 3
Làm gọn đa thức trên theo biến x và y, ta được:
> restart;p:=3*x*y+6*x^2*y-12*y^2;
:= p + - 3 x y 6 x2 y 12 y2
> > primpart(p,[x,y],'co'):`Da thuc rut gon`=%;`He so rut
gon`=co;
= Da thuc rut gon + - x y 2 x2 y 4 y2
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
9
= He so rut gon 3
b) Trích hệ số rút gọn:
Cú pháp: > content(poly,x,’pp’);
Trong đó: - poly: là đa thức
- x : là biến hoặc tập hợp các biến.
- pp: là tên của đa thức thu được sau khi trích hệ số rút gọn.
Ví dụ: Cho đa thức 3 6p xy x= - .
Trích hệ số rút gọn của đa thức trên theo biến x và tìm đa thức thu được sau khi rút
gọn:
> restart;p:=3*x*y-2*x;
:= p - 3 x y 2 x
> content(p,x,'pp'):`He so rut gon`=%;`Da thuc thu duoc`=pp;
= He so rut gon - 3 y 2
= Da thuc thu duoc x
Trích hệ số rút gọn của đa thức trên theo biến y và tìm đa thức thu được sau khi rút
gọn:
> content(p,y,'pp'):`He so rut gon`=%;`Da thuc thu duoc`=pp;
= He so rut gon x
= Da thuc thu duoc - 3 y 2
6.Xác định bậc của một đa thức,biểu thức.
Cú pháp: > degree(a,x); _xác định bậc cao nhất của đa thức a.
> ldegree(a,x); _xác định bậc thấp nhất của đa thức a.
Trong đó: - a: là một đa thức;
- x: là biến hoặc tập hợp các biến.
Ví dụ: Xác định bậc của đa thức ( ) ( )( )( )2 3 21 3 2 2 1p x x x x x= + - + +
> p:=(x^2+1)*(3*x^3-3*x^2+2)*(2*x+1);
:= p ( ) + x2 1 ( ) - + 3 x3 3 x2 2 ( ) + 2 x 1
> `Bac cua da thuc p:`=degree(p,x);
= Bac cua da thuc p: 6
Ví dụ: Xác định bậc cao nhất và thấp nhất của biểu thức: ( ) 2 73
1
3 9p x x x
x
= - + - .
> restart;
> p:=1/x^3-3*x^2+x^7-9;
:= p - + -
1
x3
3 x2 x7 9
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
10
> `Bac cao nhat cua bieu thuc p`=degree(p,x);
`Bac thap nhat cua bieu thuc p`=ldegree(p,x);
= Bac cao nhat cua bieu thuc p 7
= Bac thap nhat cua bieu thuc p -3
Với đa thức nhiều biến ta dùng cú pháp:
> degree(p(x,y,z,),{x,y,z,});
Chú ý: Trong Maple 9.5 ta phải khai báo {x,y,z,} cho tập hợp các biến chứ
không phải [x,y,z,] ! Nhưng trong Mple 10, Maple 11 thì cả 2 cách khai báo trên
đều được.
Ví dụ: Xác định bậc của đa thức: ( ) 2 3 2 3, 3 4 12p x y xy x y x y= - + + +
> restart;p:=3*x*y^2-x^3*y+4*x^2+y^2+12;
:= p - + + + 3 x y2 x3 y 4 x2 y2 12
> `Bac cao nhat theo bien x`=degree(p,x);
`Bac cao nhat theo bien y`=degree(p,y);
= Bac cao nhat theo bien x 3
= Bac cao nhat theo bien y 2
> `Bac cao nhat theo bien x va y`=degree(p,{x,y});
= Bac cao nhat theo bien x va y 4
> `Bac thap nhat theo bien x va y`=ldegree(p,{x,y});
= Bac thap nhat theo bien x va y 0
Ví dụ: Cho biểu thức ( ) 22
3
, 2 5p x y xy x y
xy
= + - .
> restart;p:=3/(x*y^2)-2*x*y-5*x^2*y;
:= p - -
3
x y2
2 x y 5 x2 y
> `Bac cao nhat theo bien x`=degree(p,x);
`Bac thap nhat theo bien x`=ldegree(p,x);
`Bac cao nhat theo bien y`=degree(p,y);
`Bac thap nhat theo bien y`=ldegree(p,y);
= Bac cao nhat theo bien x 2
= Bac thap nhat theo bien x -1
= Bac cao nhat theo bien y 1
= Bac thap nhat theo bien y -2
> `Bac cao nhat theo bien x va y`=degree(p,{x,y});
= Bac cao nhat theo bien x va y 3
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
11
> `Bac thap nhat theo bien x va y`=ldegree(p,{x,y});
= Bac thap nhat theo bien x va y -3
7.Trích hệ số của một đa thức .
Cú pháp: > coeff(p,x);
> coeff(p,x,n);
> coeff(p,x^n);
Trong đó: - p: là đa thức một biến;
- x: là biến;
- n: là bậc của luỹ thừa của biến x.
Trường hợp muốn trích hệ số tự do (hệ số của 0x ) ta dùng lệnh >
coeff(p,x,0);_không dùng coeff(p,x^0);.
Ví dụ: Cho đa thức ( ) ( ) ( )( ) ( )2 23 1 1 3 2 1f x x y x x y y= + - + - + -
> restart;f:=3*x^2*(y+1)-(x+1)*(3*x-2)+(y^2-1)*y;
:= f - + 3 x2 ( ) + y 1 ( ) + x 1 ( ) - 3 x 2 ( ) - y2 1 y
> `He so cua x^2 trong f`=coeff(f,x,2);
= He so cua x^2 trong f 3 y
> `He so tu do theo bien x`=coeff(f,x,0);
= He so tu do theo bien x + 2 ( ) - y2 1 y
> `He so cua y trong f`= coeff(f,y,1);
= He so cua y trong f - 3 x2 1
> `He so tu do theo bien y`=coeff(f,y,0);factor(%);
= He so tu do theo bien y - 3 x2 ( ) + x 1 ( ) - 3 x 2
= He so tu do theo bien y - + x 2
Chú ý: Tuy nhiên việc trích hệ số của tích 2x y không thực hiện được.
8.Liệt kê các số hạng của một đa thức, biểu thức, danh sách,
Cú pháp: > op(f); - liệt kê các số hạng
> nops(f); - đếm tổng các số hạng.
Trong đó: - f: là một danh sách, biểu thức,
Ví dụ: Xét đa thức ( ) 3 3 2f x x x= - + .
·Các số hạng của đa thức là:
> f:=x^3-3*x+2;
`Cac so hang cau thanh f:`=[op(f)];
:= f - + x3 3 x 2
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
12
= Cac so hang cau thanh f: [ ], ,x3 -3 x 2
> `So hang thu nhat:`=op(1,f);
`So hang thu hai:`=op(2,f);
= So hang thu nhat: x3
= So hang thu hai: -3 x
·Tổng số các số hạng của đa thức:
> `So so hang cua f:`=nops(f);
= So so hang cua f: 3
Ví dụ: Xét biểu thức ( ) ( )( )2 2 1 2f x x x y= - + .
Các số hạng cấu thành f là:
> restart;f:=x^2*(2*x-1)*(y+1);
`Cac so hang cau thanh f:`=[op(f)];
:= f x2 ( ) - 2 x 1 ( ) + y 1
= Cac so hang cau thanh f: [ ], ,x2 - 2 x 1 + y 1
Ví dụ: Cho danh sách: [ ], , ,I a b c d= .
Các phần tử cấu thành I là:
> L:=[a,b,c,d];
`Cac phan tu cau thanh L`=op(L);
:= L [ ], , ,a b c d
= Cac phan tu cau thanh L ( ), , ,a b c d
> `Tong so cac phan tu:`=nops(L);
= Tong so cac phan tu: 4
9.Hàm đồng nhất hệ số tương ứng của hai đa thức, biểu thức.
Cú pháp: > match(expr=pattern,var,’s’); - liệt kê các
số hạng
Trong đó: - expr: là đa thức, biểu thức;
- pattern: là mẫu(biểu thức chứa tham số)cần đồng nhất hệ số với các hệ số
tương ứng đồng bậc của expr;
- var : là tên của biến trong expr và pattern;
- `s`: là kết quả thu được nếu hàm đồng nhất cho kết quả true.
Ví dụ: Tìm các số a, b, c sao cho hai đa thức sau là bằng nhau:
( ) ( ) ( )( )3 23 2; 1f x x x g x ax x bx c= - + = - + + .
> f:=x^3-3*x+2;g:=(a*x-1)*(x^2+b*x+c);
:= f - + x3 3 x 2
:= g ( ) - a x 1 ( ) + + x2 b x c
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
13
> match(f=g,x,'s');
true
> s;
{ }, , = a 1 = c -2 = b 1
Ví dụ: Khi tính nguyên hàm 3sin cos
sin 2cos
x x
I dx
x x
-
=
+ò .
Ta cần biến đổi tử thức ( ) 3sin cosf x x x= - về dạng ( ) ( ) ( ). .f x A g x B g x¢= + hay
( ) ( ) ( )sin 2cos cos 2sinf x A x x B x x= + + - với ( ) sin 2cosg x x x= + .
Và ta phải tìm các hệ số A, B.
Ta làm như sau:
> restart;f:=3*sin(x)-
cos(x);g:=A*(sin(x)+2*cos(x))+B*(cos(x)-2*sin(x));
:= f - 3 ( )sin x ( )cos x
:= g + A ( ) + ( )sin x 2 ( )cos x B ( ) - ( )cos x 2 ( )sin x
> match(f=g,x,'s');
true
> s;
{ }, = A
1
5
= B
-7
5
Suy ra: ( ) ( ) ( )1 sin 2cos 7 cos 2sin
5
f x x x x x= + - -é ùë û
Vậy: ( ) ( )7 cos 2sin sin 2cos1 11 7
5 sin 2cos 5 sin 2cos
x x d x x
I dx x
x x x x
- +æ ö é ù
= - = -ç ÷ ê ú+ +è ø ë û
ò ò +C
( )1 7ln sin 2cos
5
I x x x C= - + +
10.Hàm trích các vế (trái/ phải) của một phương trình có dạng: f(x) = g(x).
Đặt tên cho phương trình trên là “eq”.
Khi đó: - vế trái phương trình được gọi bằng hàm: > lhs(eq);
- vế phải phương trình được gọi bằng hàm: > rhs(eq);
Ví dụ: Cho phương trình 1 2 5x x- + - =
> eq:=sqrt(x-1)+sqrt(2-x)=5:eq;
= + - x 1 - 2 x 5
Gọi vế trái, vế phải của phương trình như sau:
> `Ve trai`=lhs(eq);
= Ve trai + - x 1 - 2 x
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
14
> `Ve phai`=rhs(eq);
= Ve phai 5
Nhận xét: Ứng dụng Hàm này khi muốn thao tác, biến đổi(khai căn, bình
phương,) trên các vế của một phương trình .
Ví dụ: Giải phương trình 22 2 2x x x+ - = -
> restart;eq:=sqrt(2*x^2+x-2)=2-x:eq;
= + - 2 x2 x 2 - 2 x
> dk:=[solve(rhs(eq)>=0,x)]:
`Dieu kien`=dk;
= Dieu kien [ ]( )RealRange ,-¥ 2
> l:=(lhs(eq))^2: r:=(rhs(eq))^2:
`Binh phuong hai ve duoc:`;
eq1:=l=r: eq1;
Binh phuong hai ve duoc:
= + - 2 x2 x 2 ( ) - 2 x 2
> `Giai Pt nay thu duoc tap nghiem:`;
T:=solve(eq1, {x});
Giai Pt nay thu duoc tap nghiem:
:= T ,{ } = x 1 { } = x -6
11. Hàm tính giá trị của một biểu thức (một hoặc nhiều biến).
Cú pháp: > eval(f,x=a,y=b,);
Trong đó: - f: là biểu thức, đa thức;
- x= a; y=b;: giá trị các biến.
Ví dụ: Cho biểu thức ( ) 2 2, , 3 2 2f x y z xy xy x z= + - .
> f:=3*x*y+2*x*y^2-2*x^2*z;
:= f + - 3 x y 2 x y2 2 x2 z
> `f(2,-1,z)`=eval(f,[x=2,y=-1]);
= f(2,-1,z) - - 2 8 z
> `f(2a,-2,3)`=eval(f,[x=2*a,y=-2,z=3]);
= f(2a,-2,3) - 4 a 24 a2
12. Phép chia đa thức.
a) Kiểm tra xem đa thức a có chia hết cho đa thức b hay không.
Cú pháp: > divide(a,b,’q’);
Trong đó: - a, b: là các đa thức với hệ số hữu tỉ;
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
15
- q: là thương số của phép chia a cho b, nếu kết quả của hàm trên là true.
Ví dụ: Kiểm tra xem đa thức 4 4x y- có chia hết cho đa thức x y+ không? Nếu
chia hết ta tìm thương số của phép chia đó .
> divide(x^4-y^4,x+y,'q');
true
> `Thuong cua phep chia`;q;
q:=factor(q):`Hay`;q;
Thuong cua phep chia
- + - + y3 x y2 x2 y x3
Hay
-( )- + x y ( ) + y2 x2
·Nếu chỉ muốn kiểm tra xem a có chia hết cho b hay không thì ta dùng lệnh:
> divide(a,b);
b) Tìm thương và dư của phép chia đa thức a cho đa thức b.
Giả sử: .a b q r= +
· Tìm thương:
Cú pháp: > quo(a,b,x);
> quo(a,b,x,’r’);
Trong đó: - a, b: là các đa thức một biến x;
- `r`: là đa thức dư.
· Tìm dư:
Cú pháp: > rem(a,b,x);
> rem(a,b,x,’q’);
Trong đó: - a, b: là các đa thức một biến x;
- `q`: là đa thức thương.
Ví dụ: Cho hai đa thức: ( ) ( )3 2 22 3 1; 2f x x x x g x x x= + - + = + + .
Tìm thương và đa thức dư khi chia f cho g:
> f:=x^3+2*x^2-3*x+1;g:=x^2+x+2;
:= f + - + x3 2 x2 3 x 1
:= g + + x2 x 2
> `Thuong (cua f chia g):`=quo(f,g,x,'r');
`Da thuc du:`=r;
= Thuong (cua f chia g): + x 1
= Da thuc du: - - 1 6 x
Nếu chỉ muốn tìm thương ta chỉ cần khai báo >quo(f,g,x); cho đỡ tốn bộ nhớ.
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
16
> quo(f,g,x):
`Thuong (cua f chia g):`=%;
= Thuong (cua f chia g): + x 1
Để tìm đa thức dư của phép chia f cho g, ta dùng lệnh: > rem(f,g,x);
> rem(f,g,x):
`Du (cua f chia g):`=%;
= Du (cua f chia g): - - 1 6 x
13. Một số gói lệnh tạo sẵn liên quan đến đa thức.
13.a. Gói lệnh: > with(PolynomialTools):
· Hàm : > Translate(f,x,x0); ;
Công dụng: tính f(x+x0), với f(x) là đa thức một ẩn cho trước.
Ví dụ: Cho đa thức ( ) 2 3f x x x= + -
Thay 3x x= - ta được:
> with(PolynomialTools):
f:=x^2+x-3;f1:=Translate(f,x,-3):`f(x-3)`=f1;
:= f + - x2 x 3
= f(x-3) - + 3 5 x x2
Xét một ví dụ áp dụng về phép biến đổi đồ thị
(Chương trình Toán lớp 10_Đại số nâng cao):
Cho hàm số ( ) 3 2y f x x x= = - + . Hỏi phải tịnh tiến đồ thị hàm số đã cho sang
trái/phải và lên/xuống bao nhiêu để được đồ thị hàm số
( ) 3 26 11 6y g x x x x= = + + + ?
Hướng dẫn giải:
+ Đầu tiên ta giả sử đồ thị hàm số ( )g x được được biến đổi từ đồ thị hàm số f(x)
bằng cách tịnh tiến liên tiếp dọc theo trục Ox một đoạn bằng p và theo trục Oy một
đoạn bằng q. Khi đó: ( ) ( )g x f x p q= + + . (*)
Nhập vào Maple:
> restart;
> with(PolynomialTools):
f:=x^3-x+2;
g:=x^3+6*x^2+11*x+6;`----------`;
f1:=Translate(f,x,p)+q:`f(x+p)+q`=f1;
f2:=collect(f1,x,factor):`f(x+p)+q`=f2;
:= f - + x3 x 2
:= g + + + x3 6 x2 11 x 6
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
17
----------
= f(x+p)+q + + + + - + x3 3 p x2
( )- + p 3 p3 x
p
p3 2 p q
= f(x+p)+q + + + - + + x3 3 p x2 ( )- + 1 3 p2 x 2 p q p3
{Ở trên ta đã giả sử tịnh tiến sang trái/phải một đoạn bằng p và tịnh tiến lên/xuống
một đoạn bằng q}.
Để tìm các số thực p, q ta đồng nhất các hệ số tương ứng ở hai vế trong (*):
> match(g=f2,x,'s');
true
> s;
{ }, = p 2 = q -2
Vậy, đồ thị hàm số g(x) có được bằng cách tịnh tiến liên tiếp đồ thị hàm số f(x)
sang trái dọc theo trục Ox 2 đơn vị và xuống dưới dọc theo trục Oy 2 đơn vị.
14. Một số hàm liên quan đến phân thức hữu tỉ ( ) ( )( )
p x
f x
q x
æ ö
=ç ÷ç ÷
è ø
.
14.a) Hàm trích tử thức và trích mẫu thức:
Cú pháp: > numer(f); - trích tử thức của phân thức f;
> denom(f); - trích mẫu thức của phân thức f;
Ví dụ: Cho phân thức ( )
2
3 2
3 2
2 2
x x
f x
x x x
- +
=
- + -
+Trích tử thức và tử thức của f ta được:
> f:=(x^2-3*x+2)/(2*x^3-x^2+x-2);
:= f
- + x2 3 x 2
- + - 2 x3 x2 x 2
> `Tu thuc la:`;numer(f);
Tu thuc la:
- + x2 3 x 2
> `Mau thuc la:`; denom(f);
Mau thuc la:
- + - 2 x3 x2 x 2
14.b) Hàm đơn giản phân thức hữu tỉ về dạng chuẩn.
Cú pháp: > normal(f);
Ví dụ: Với hàm f ở Ví dụ trên, ta có thể làm gọn như sau:
> f:=normal(f);
Khám phá Maple 11. Đỗ Cao Long. THPT Nam Đông
18
:= f
- x 2
+ + 2 x2 x 2
Nhận xét, với hàm phân thức thì lệnh > simplify(f); cho kết quả gần với lệnh
> normal(f);. Ta xem:
> simplify(f);
- x 2
+ + 2 x2 x 2
14c.Phân tích phân thức hữu tỉ thành tổng của các phân thức đơn giản .
Các cú pháp: > convert(f,parfrac);
> convert(f,parfrac,K);
> conve
File đính kèm:
- Ch06.Dathuc.pdf