Chế độ thủ tục được thực hiện bằng cách đóng gói một dãy các lệnh xử lí cùng một công việc vào trong một thủ tục procedure duy nhất, sau đó ta chỉ cần gọi thủ tục này và Maple tự động th
Trang 1MỤC LỤC
I Giới thiệu 2
II Các vấn đề cần lưu ý 3
III Ứng dụng giải bài toán 9
1 Mô tả yêu cầu bài toán 9
2 Cấu trúc dữ liệu trên maple 10
3 Thuật giải 10
4 Viết chương trình và chạy thử nghiệm 11
Kết luận 12
Trang 2MỘT SỐ VẤN ĐỀ CẦN LƯU Ý KHI GIẢI CÁC BÀI
TOÁN TRÊN MAPLE I/ Giới thiệu:
Maple là một ngôn ngữ lập trình hướng thủ tục (procedure) Chúng ta có thể làm việc với Maple bằng hai chế độ khác nhau: Chế độ tương tác trực tiếp thông qua việc nhập từng lệnh đơn lẻ ngay tại dấu nhắc lệnh của Maple và nhận được ngay kết quả của lệnh đó Chế độ thủ tục được thực hiện bằng cách đóng gói một dãy các lệnh xử lí cùng một công việc vào trong một thủ tục (procedure) duy nhất, sau đó ta chỉ cần gọi thủ tục này và Maple tự động thực hiện các lệnh có trong thủ tục đó một cách tuần tự và sau đó trả lại kết quả cuối cùng
Maple chứa một lượng rất lớn các hàm tạo sẵn đáp ứng cho những yêu cầu tính toán khác nhau trong nhiều lĩnh vực Các hàm này được lưu trữ trong các gói thủ tục (package) và người sử dụng có thể dễ dàng gọi đến mỗi khi cần thiết Tuy nhiên, người dùng Maple có thể tự tạo cho riêng mình những gói thủ tục cũng như có thể trao đổi dùng chung những gói thủ tục nào đấy, phục vụ cho công việc mang tính đặc thù riêng của mình
Các khái niệm cơ bản cần phải nắm vững để tạo ra một thủ tục (procedure) là: Cấu trúc proc() end; cùng với các khai báo trong cấu trúc này (global, local, option, )
Các cấu trúc dữ liệu và các hàm có liên quan (dãy-sequence, tập hợp-set, danh sách-list, mảng-array, bảng-table)
Các hàm lập trình cơ bản (đã nêu ở trên) và các hàm liên quan đến việc xử lí
dữ liệu (eval, evalf, subs, map, convert, )
Trang 3Một số tính năng cơ bản của Maple như sau:
- 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ện hầu hết các phép toán cơ bản trong chương trình toán học phổ thông và đại học;
- Cung cấp các công cụ minh họa hình học thuận tiện như: Vẽ đồ thị tĩnh hoặc động của các đường, các mặt được cho bởi các hàm tùy ý trong nhiều hệ trục tọa độ khác nhau;
- 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ữ khác 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;
- Một chương trình trợ giúp hiệu quả cho giảng viên và sinh viên trong việc dạy và học toán
- Maple là một nguồn mở cho phép người dùng tạo ra các lệnh và chương trình riêng của mình bằng các modul lệnh có sẵn và ráp nối các dòng lệnh đơn giản
Khai báo thủ tục
- Lời gọi khai báo một thủ tục:
procedure_name:=proc(parameter_sequence) [local local_sequence]
[global global_sequence]
[options options_sequence]
statements_sequence;
end;
Trang 4- Giải thích các khai báo:
- parameter_name: Là một dãy các kí hiệu, ngăn cách nhau bởi các dấu phẩy, chứa tên các tham biến truyền cho thủ tục
- local_sequence: Là một dãy các tên được khai báo là biến cục bộ trong thủ tục, nó chỉ có giá trị sử dụng trong phạm vi thủ tục đang xét (local được sử dụng để khai báo cho các biến chỉ sử dụng bên trong một thủ tục)
- global_sequen: Dãy các tên biến toàn cục có giá trị sử dụng ngay cả bên ngoài thủ tục
- options_sequence: Dãy các tuỳ chọn cho một thủ tục
- statements_sequence: Dãy các câu lệnh do người lập trình đưa vào
II/ Các vấn đề cần lưu ý:
Để lập trình cho các bài toán ta cần chú ý các vấn đề sau:
Vấn đề 1 :
Chọn chế độ Math
Vấn đề 2 :
Lệnh đầu tiên là restart: dùng để xóa các biến trong bộ nhớ
Vấn đề 3:
Để ghi chú một vấn đề hay giải thích một đoạn chương trình, bắt đầu bằng dấu #
Ví dụ:
#Đây là phần xử lý của chương trình
Vấn đề 4:
Khi viết xong một lệnh, để xuống hàng ta phải nhấn Shift + Enter
Các lệnh của chương trình sẽ được bao bọc trong một đường biên hình chữ nhật
Trang 5 Vấn đề 5:
Nhấn Enter để chạy chương trình Khi viết được một số dòng nên để con trỏ trong vùng hình chữ nhật và nhấn Enter để chạy chương trình xem có lỗi hay không
Vấn đề 6:
Cuối mỗi lệnh cần phân biệt nên kết thúc bởi dấu ; hay dấu :
Muốn hiện kết quả thì gõ dấu (;)
Không muốn hiện kết quả mà chỉ ghi nhớ thì nên để dấu (:)
Vấn đề 7:
Để hiển thị một cụm từ, ta sẽ đặt cụm từ ấy giữa hai dấu nháy `… `
Ví dụ: `phương trình đã cho có nghiệm là`
Vấn đề 8:
Gán tên cho một biểu thức và gán giá trị cho biến:
Để gán biểu thức bieu_thuc cho f ta viết:
f:=bieu_thuc:
Ví dụ: f≔ x3
−3 x2+ 2
Bây giờ có thể thực hiện các phép tính với f:
>
Để xóa đi giá trị đã gán, ta thực hiện lệnh gán f:=`f`;
Ta cũng có thể thực hiện lệnh restart: để xóa đi tất cả biến đã gán
Vấn đề 9:
Khái niệm mảng 1 chiều: nếu ta gán A:=[m1,m2,m3,…,mk] thì A[1]
sẽ nhận giá trị m1, A[2] sẽ nhận giá trị m2
Ví dụ:
Trang 6>
>
>
>
Người ta thường dùng cách này để đặt tọa độ cho một điểm Chẳng hạn nhập vào tọa độ hai điểm A và B, ta cần viết phương trình đường thẳng
AB và khoảng cách giữa hai điểm AB ta thực hiện như sau:
Vấn đề 10:
Lệnh trích vế trái, vế phải của một đẳng thức
lhs(đt): trích vế trái của đẳng thức
rhs(đt): trích vế phải của đẳng thức
>
>
>
Trang 7 Vấn đề 11 :
Trích hệ số của đa thức:
coeff((đt,x,n);
Ví dụ:
>
>
>
>
>
Lập một đoạn chương trình giải quyết bài toán: biện luận theo tham số
m số nghiệm của phương trình bậc hai
>
>
>
>
>
>
>
Trang 8>
>
>
>
Xác định tham số m để phương trình bậc hai có hai nghiệm x1, x2 thỏa mãn:
TH1: x1<α<x2
TH2: x2>x1>α
Chương trình:
Nhập vào phương trình bậc 2 có chứa tham số m
>
Nhập vào số α
>
thay x:=t+α , ta có phương trình:
>
>
>
trích hệ số a,b,c của phương trình 2:
>
>
>
Trang 9>
Gán ∆,S,P của phương trình pt:
>
TH1: x1<α<x2 hay t1<α<t2 điều này tương đương với P<0
>
TH2: Phương trình có hai nghiệm x2>x1>α, điều này có nghĩa là pt có nghiệm t1,t2 trong khoảng t2>t1>0:
tương đương với ∆ >0, S>0, P>0
>
III/ Ứng dụng giải bài toán khảo sát hàm số:
1/ Mô tả yêu cầu bài toán:
Khảo sát hàm số bậc 3: y= ax3 + bx2 +cx +d
1.1Tìm tập xác định của hàm số
1.2 Xét sự biến thiên của hàm số
a Chiều biến thiên: tính đạo hàm y’, xét dấu y’ để suy ra chiều biến thiên của đồ thị hàm số
b Cực trị: Dựa vào chiều biến thiên tìm các điểm cực trị (nếu có) của đồ thị hàm số
Trang 10c Tính lồi lõm và điểm uốn: tính đạo hàm y’’ xét dấu y’’tìm điểm uốn của đồ thị (nếu có)
d Tìm các giới hạn của hàm số
1.3 Vẽ đồ thị hàm số:
Vẽ các đường tiệm cận của đồ thị hàm số
Xác định các điểm đặc biệt của đồ thị hàm số: cực trị, các giao điểm của đồ thị với các trục tọa độ
Vẽ đồ thị hàm số
2/ Cấu trúc dữ liệu trên maple
Nhập vào giá trị : a,b,c,d
Khảo sát hàm số bậc 3: y= ax3 + bx2 +cx +d
3/ Thuật giải:
- Bước 1 : Tìm tập xác định : D=R
- Bước 2 : Tính y’ Giải PT y’=0 tìm các điểm cực trị
- Bước 3 : Tính các giới hạn:
lim ( )
( 0)
x
a
a
lim ( )
( 0)
x
a
a
- Bước 4 : Tìm điểm uốn :
Tính y’’.giải y’’=0 tìm điểm uốn
- Bước 5 : Lập bảng biến thiên
- Bước 6: Nhìn BBT kết luận (có 4 ý sau)
Hàm số đạt CĐ tại x=? khi đó y=?
Hàm số đạt CT tại x=? khi đó y=?
Hàm số đồng biến trên khoảng ?
Trang 11 Hàm số nghịch biến trên khoảng ?
- Bước 7 : đồ thị
Bảng giá trị
x
y
Vẽ đồ thị
NHẬN XÉT: Đồ thị nhận điểm uốn làm tâm đối xứng
4/ Viết chương trình và chạy thử nghiệm
>
>
>
>
Trang 12>
Trang 14Kết luận:
Bài toán khảo sát hàm số là một trong những bài toán cơ bản trong chương trình toán THPT, nên trong báo cáo này em mong muốn trình bày một số vấn đề ứng dụng Maple để khảo sát hàm số, cũng như một số vấn đề cơ bản khi sử dụng Maple Từ những bài giảng của thầy và những kiến thức sưu tầm trong quá trình làm tiểu luận em nhận thấy rằng nếu khai thác tốt các tính năng, Maple sẽ đem lại một công cụ rất hiệu quả trong nghiên cứu khoa học cũng như trong nhiều lĩnh vực khác nữa Nhưng do hạn chế của bản thân chưa có nhiều thời gian nghiên cứu, nên bài tiểu luận còn nhiều thiếu sót, rất mong nhận được những nhận xét quí báu của thầy Em xin chân thành cảm ơn
Trang 15TÀI LIỆU THAM KHẢO
[1] Tập tài liệu giảng dạy môn Lập tr.nh Symbolic cho Trí tuệ
nhân
tạo của thầy PGS.TS Đỗ Văn Nhơn – Đại học Công nghệ
thông tin – Đại
học Quốc gia TP.HCM
[2] http://google.com.vn, http://mapplesoft.com
[3] Mục Help của chương trình Mapple v.16.
[4] Tuyển tập các chuyên đề luyện thi đại học môn Toán Hàm số, Trần Phương
(2004), NXB Hà Nội