Từ phiên bản 7, Maple cung cấp ngày càng nhiều các công cụ trực quan, các gói lệnh tựhọc gắn liền với toán phổ thông và đại học.. Ưu điểm đó làm cho nhiều nước trên thế giới lựachọn sử d
Trang 1Từ phiên bản 7, Maple cung cấp ngày càng nhiều các công cụ trực quan, các gói lệnh tựhọc gắn liền với toán phổ thông và đại học Ưu điểm đó làm cho nhiều nước trên thế giới lựachọn sử dụng Maple cùng các phần mềm toán học khác trong dạy học toán trước đòi hỏi củathực tiễn và sự phát triể n của giáo dục.
Các tính năng cơ bản của Maple.
Là một hệ thống tính toán trên các biểu thức đại số;
Có thể thực hiệc đợc hầu hết các phép toán cơ bản trong chương trình toán đại học và phổthông;
Cung cấp các công cụ minh họa hình học thuận tiện gồm: vẽ đồ thị tĩnh và động của cácđường và mặt được cho bởi các hàm tùy ý trong nhiều hệ tọa độ khác nhau;
Một ngôn ngữ lập trình đơn giản và mạnh mẽ có khả năng tương tác với các ngôn ngữ lập trình khác;
Cho phép trích xuất ra các định dạng khác nhau như: LaTex,Word, HTML,
Một công cụ biên soạn giáo án và bài giảng điện tử, thích hợp với các lớp học tương tác trực tiếp;
Hỗ trợ rất hữu ích cho sinh viên trong việc tự học
…
Khi khởi động Maple nhân của Maple được kích hoạt Maple tự động nạp các lệnh cũng nhưnhững chức năng cơ bản vào môi trường làm việc Lúc này chúng ta có thể thực hiện các tínhtoán cơ bản Những tính toán chuyên ngành chúng ta sẽ sử dụng các lệnh chứa trong các góitương ứng
Để nạp các gói lệnh này các bạn sử dụng lệnh with, chẳng hạn:
> with(LinearAlgebra);
Trang 1
Trang 2Quy tắc gõ lệnh
Các lệnh của Maple được gõ sau dấu nhắc lệnh > ,
kết thúc lệnh bằng dấu chấm phẩy (;) nếu muốn Maplehiển thị kết quả của việc tính toán, hoặc dấu hai chấm(:)nếu chỉ yêu cầu Maple tính toán mà không hiển thị kếtquả Các bạn dùng phím Enter để yêu cầu Maple bắt đầuthực hiện tính toán
Trang2
Trang 3Giới thiệu Maple
Trang 4Có thể gọi lại giá trị tính sau cùng bằng lệnh:
> %;
hoặc:
> _ans;
Phần Help của Maple
Maple cung cấp cho chúng ta phần Help khá đầy đủ với các chỉ dẫn về lệnh vàcác ví dụ minh họa cụ thể Để tìm từ khóa nào đó trong Help các bạn có thểviết lệnh dạng > ? tu_khoa_can_tim Ví dụ:
> ?int
> ?plot
>
Hoặc bạn có thể dùng chuột bôi đen từ khóa rồi nhấn F2
Khi vào phần hướng dẫn (Help) các bạn có thể click chuột phải và chọn Copy Examples
Tra
Trang 5ng4
Trang 6và dán vào trang làm việc để chạy thử các ví dụ.
Trang 7Giới thiệu Maple
Trang 86
Trang 9Giới thiệu Maple
Trang 10Tìm thương khi chia a cho b
Trang 11Giới thiệu Maple
Trang 13Trang10
Trang 15piecewise(dieu_kien_1, bieu_thuc_1, ,dieu_kien_n, bieu_thuc_n, bieu_thuc_n+1);
> f:=x->piecewise(x>0,x^2-x,x=0,1,x);
Trang11
Trang 16sum(bieu_thuc, bien_chay=gia_tri_dau gia_tri_cuoi);
Sum(bieu_thuc, bien_chay=gia_tri_dau gia_tri_cuoi);
> Sum(i^4,i=1 5);
> value(%);
> sum(i^4,i=1 5);
Tran
Trang 17g12
Trang 18product(bieu_thuc, bien_chay=gia_tri_dau gia_tri_cuoi);
Product(bieu_thuc, bien_chay=gia_tri_dau gia_tri_cuoi);
> Product(i,i=1 5);
> value(%);
Trang
Trang 1913
Trang 20> Product(1+1/i^2,i=1 infinity)=product(1+1/i^2,i=1 infinity);
> Product(1+2/i^2,i=1 infinity)=product(1+2/i^2,i=1 infinity);
* Lưu ý: Chúng ta có thể sử dụng lệnh sum và product để tính tổng và tích
các biểu thức liên quan đến nghiệm của đa thức
Trang 2114
Trang 23Giới thiệu Maple
cac_tham_so: các tham số hay dùng như : title (tên đồ thị), color (màu), thickness (độ
dày),
> plot(sin(x),x=-Pi Pi,title="Do thi ham y=sinx");
> plot(x*sin(x)+cos(x),x=-3 3,color=blue);
Trang 24Để vẽ nhiều đồ thị trên cùng một hệ trục tọa độ ta có thể dùng cú pháp:
plot({f1(x), f2(x), ,fn(x)},x=a b, cac_tham_so);
> plot({x*sin(x)+cos(x),sin(x)},x=-Pi Pi);
Trang 17
Trang 25Giới thiệu Maple
Đối với hàm số không liên tục, để vẽ đồ thị chính xác bạn nên thêm tham số
discont=true
vào lệnh vẽ Các bạn có thể so sánh ở ví dụ sau:
> f:=(x+1)/(x-1):
> plot(f,x=0 2,y=-10 10);
Trang 27Giới thiệu Maple
> plot(f,x=0 2,y=-10 10,discont=true);
Trang 19
Trang 28Đồ thị 3D
Cú pháp: plot3d(f(x,y),x=a b,y=c d, cac_tham_so);
> plot3d(sin(x+y), x=-1 1, y=-1 1);
Trang 20
Trang 29Giới thiệu Maple
> plot3d(sin(x*y), x=-Pi Pi, y=-x x);
Trang 21
Trang 30> plot3d(x*exp(-x^2-y^2), x=-2 2, y=-2 2, color=x);
Trang 22
Trang 31Giới thiệu Maple
> plot3d({sin(x*y), x + 2*y}, x=-Pi Pi, y=-Pi Pi);
Trang 23
Trang 32> plot3d([sin(x*y), x + 2*y], x=-Pi Pi, y=-Pi Pi, color=[blue,green]);
Trang 24
Trang 33Giới thiệu Maple
>
Trang 25
Trang 34Cơ bản về lập trình trên Maple
Một vài nét cơ bản về lập trình trên Maple, chủ yếu là cách sử dụng các vòng lặpfor do, while do, lệnh điều kiện if then và cách thiết lập một thủ tục (procedure) trong Maple
Trang 35Trang26
Trang 36Rõ ràng ta thấy rằng sau mỗi lần thực hiện lệnh, biến i trong vòng for lại tăng lên
1 Tuy nhiên ta cũng có thể kiểm soát bước nhảy này của biến chạy bằng cách sử dụng cúpháp sau:
for bien_chay from gia_tri_dau by buoc_nhay
Trang 37rang27
Trang 382 In bình phương của 10 số nguyên tố đầu tiên ra màn hình
> for i from 1 to 10 do
print(ithprime(i)^2);
end do;
Trang 28
Trang 39Giới thiệu Maple
Trang 4029
Trang 41Giới thiệu Maple
C
h ú ý : Khi sử dụng vòng lặp này thì cần chú ý đến điều kiện dừng nếu không sẽrơi vào tình trạng vòng lặp thực hiện mãi mãi đến khi tràn ô nhớ Để tránh tình trạngnày thì trong thân vòng lặp phải có lệnh thoát vòng lặp (sẽ đề cập sau) hoặc lệnh làmthay đổi giá trị của dieu_kien (ở ví dụ trên ta có thực hiện lệnh tăng biến i, cụ thểi:=i+1;)
Ví dụ:
1 Tìm 1 nghiệm
xấp xỉ của phương trình tiếp. bằng phép lặp liên
Phương trình được viết lại:
Trang 43Giới thiệu Maple
2 Dùng thuật toán Euclid để tìm UCLN của hai số nguyên dương a và b
Trang 45Giới thiệu Maple
elif dieu_kien_n the
Trang 46Ví dụ:
1 Tìm số lớn nhất trong 3 số a,b,c
> a:=14;b:=35;c:=40;
> soLN:=a:
if b>soLN then soLN:=b
elif c>soLN then soLN:=c;
end if;
Trang 33
Trang 47Giới thiệu Maple
Trang 48if i=5 then break; fi;
Trang 49Giới thiệu Maple
cac_bien_dia_phuong: các biến chỉ dùng trong thủ tục này
cac_bien_toan_cuc: các biến này được sử dụng trong thủ tục và giá trị của nó vẫn được lưu lại khi thực hiện xong thủ tục
Trang 5036
Trang 51> in_ra(22,9);
> tong;# biến địa phương
Giới thiệu Maple
> tich;# biến toàn cục
= p r o c ( a , b , c ) l o c a l t
; t :
= a + b
; t+c;
e n
Trang 52> tong(3,4,5);
> s:=tong(3,4,5);
Tr
Trang 53Giới thiệu Maple
Ngoài ra, chúng ta có thể sử dụng lệnh return để trả lại giá trị cho thủ tục ở bất
cứ vị trí nào trong thân chương trình Tuy nhiên khi lệnh return thực hiện thì thủ tụcngừng thực hiện và nhận giá trị do lệnh return trả về
< a then b end if; print("Ket thuc") e " align="center" border="0">
< a then b end if; print("Ket thuc") e " align="center" border="0">
< a then b end if; print("Ket thuc") e " align="center" border="0">
< a then b end if; print("Ket thuc") e " align="center" border="0">
< a
then b end if; print("Ket thuc") e " align="center" border="0">
< a then b end if; print("Ket thuc") e " align="center" border="0">
<
a
Trang 54Ví dụ:
1 Một số tự nhiên n được gọi là số hoàn hảo nếu n bằng tổng các ước số <n của
nó Viết thủ tục sohh(n) để kiểm tra số n có phải là số hoàn hảo hay không
> sohh:=proc(n::posint)
Trang38
Trang 55Giới thiệu Maple
Trang 562 Viết thủ tục UCLN(a,b) để tìm UCLN của hai số a,b.
Trang 57Giới thiệu Maple
print(Delta=d);
i f
Trang 59Giới thiệu Maple
2 Kiểm tra số nguyên tố
Yêu cầu: Viết thủ tục kiểm tra số tự nhiên n cho trước có phải là số nguyên tố hay không
do if n mod i=0 then
return false; fi;
;
tru e;
3 Xác định giao điểm của 2 đường cong trên đồ thị
Yêu cầu: Cho 2 đa thức P(x) và Q(x) Hãy xác định các giao điểm của 2 đồ thị
y=P(x) và y=Q(x) trên hệ tọa độ Oxy
Trang 61Giới thiệu Maple
Trang 62> giaodiem(x^3-6*x,x^2-x-1);
Toa do cac giao diem:
>
Trang 44