Toán học - Đa thức

pdf22 trang | Chia sẻ: minhhong95 | Lượt xem: 565 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Toán học - Đ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:

  • pdfTai lieu Maple 06.pdf