You are on page 1of 18

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

KHOA TOÁN – TIN ỨNG DỤNG


-----------***----------

BÀI TẬP LỚN


MÔN LẬP TRÌNH TÍNH TOÁN

ĐỀ TÀI : CÁC HÀM MẬT ĐỘ XÁC SUẤT CƠ BẢN

GV Hướng Dẫn : NGUYỄN HỮU ĐIỂN


SV Thực Hiện : NGUYỄN LƯƠNG BẰNG
Lớp : Toán – tin 2, K51

Hà Nội, tháng 11/2009

1
MỤC LỤC

I. Lịch sử phát triển của Maple :………………………………...……3

II. Tìm hiểu về phần mèm Maple :………………………...………….4


1. Các tính năng cơ bản của maple :…………………..…………………4

2. Một số gói thủ tục :………………………..…………………………….5

2.1 Student :…………………………..……………………………...5

2.2 Plots và Plottools :……………………………………………….6

2.3 Một số lệnh :………………………………………………………9

III Nội dung bài toán :……………………………………..….………13

1. Ví dụ giới thiệu :……………………………………….……………….13

2. Code chương trình :………………………………………………...….17

KẾT LUẬN :…………………………………………………………….….……20

TÀI LIỆU THAM KHẢO :……………………………………………….…….21

2
I. Lịch sử phát triển của Maple

Khái niệm đầu tiên về Maple xuất phát từ một cuộc họp vào tháng 11 năm
1980 tại Đại học Waterloo. Những nhà nghiên cứu tại đại học muốn mua một máy
tính đủ mạnh để chạy Macsyma. Thay vào đó, người ta quyết định họ sẽ phát triển
hệ thống đại số máy tính riêng để có thể chạy được những máy tính có giá thành
hợp lý hơn. Do đó, dự án bắt đầu với mục tiêu là tạo ra một hệ thống đại số hình
thức mà các nhà nghiên cứu và sinh viên có thể truy cập được.

Sự phát triển đầu tiên của Maple được tiến hành rất nhanh, với phiên bản
hạn chế đầu tiên xuất hiện vào tháng 12 năm 1980. Những nhà nghiên cứu đã thử
nghiệm và loại bỏ nhiều ý tưởng khác nhau để tạo ra một hệ thống liên tục cải tiến.
Maple được trình diễn đầu tiên tại những hội nghị bắt đầu vào năm 1982.

Đến cuối năm 1983, trên 50 trường đại học đã cài Maple trên máy của họ.
Do số lượng hỗ trợ và yêu cầu giấy phép lớn, vào năm 1984, nhóm nghiên cứu đã
sắp xếp với WATCOM Products Inc để cấp phép và phân phối Maple.

Vào năm 1988, do số lượng hỗ trợ ngày càng tăng, Waterloo Maple Inc.
được thành lập. Mục tiêu đầu tiên của công ty là quản lý những bản phân phối
phần mềm. Cuối cùng, công ty cũng phải mở ra phòng R&D ở đó khá nhiều sự
phát triển cho Maple được thực hiện đến ngày nay. Sự phát triển đáng kể của
Maple tiếp tục diễn rại những phòng thí nghiệm trường đại học, bao gồm: Phòng
thí nghiệm Tính toán hình thức tại Đại học Waterloo; Trung tâm nghiên cứu Tính
toán hình thức Ontario tại Đại học Tây Ontario; và những phòng thí nghiệm khắp
nơi trên thế giới.

Vào năm 1989, giao diện đồ họa người dùng đầu tiên của Maple được phát
triển và bao gồm trong bản 4.3 dành cho Macintosh. Những phiên bản trước của
3
Maple chỉ gồm giao diện dòng lệnh với ngõ ra hai chiều. Bản X11 và Windows với
giao diện mới tiếp bước vào năm 1980 với Maple V.

Vào năm 1999, với việc phát hành Maple 6, Maple đã đưa vào một số Thư
viện Số học NAG, được mở rộng độ chính xác ngẫu nhiên.

Vào năm 2003, giao diện “chuẩn” hiện nay được giới thiệu trong Maple 9.
Giao diện này được viết chủ yếu bằng Java (mặc dù có nhiều phần, nhưng luật cho
việc gõ công thức toán học, được viết bằng ngôn ngữ Maple). Giao diện Java bị
phê phán là chậm; những sự phát triển được thực hiện trong các bản sau, mặc dù
tài liệu Maple 11 documentation khuyến cáo giao diện (“cổ điển”) trước đây dành
cho người với bộ nhớ vật lý ít hơn 500 MB. Giao diện cổ điển này không còn được
bảo trì.

Giữa 1995 và 2005 Maple đã mất khá nhiều thị phần vào tay đối thủ do có
giao diện người dùng yếu hơn. Nhưng vào năm 2005, Maple 10 giới thiệu một
“chế độ văn bản” mới, như một phần của giao diện chuẩn. Tính năng chính của chế
độ này là phép toán được đưa vào bằng ngõ nhập hai chiều, do đó nó xuất hiện
tương tự như công thức trong sách. Vào năm 2008, Maple 12 đã thêm những tính
năn giao diện người dùng giống như Mathematica, gồm có những kiểu trình bày
theo mục đích đặc biệt, quản lý phần đầu và cuối trang, so trùng mở đóng ngoặc,
vùng thực hiện tự động, mẫu hoàn thành lệnh, kiểm tra cú pháp và vùng tự động
khởi tạo. Những tính năng khác được thêm để làm cho Maple dễ dùng hơn như
một hộp công cụ Maple.

II. Tìm hiểu về phần mèm Maple


1. Các tính năng cơ bản của Maple

Có thể nêu vắn tắt các chức năng cơ bản của Maple như sau:

4
• là một hệ thống các 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à sau đại học;

• 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;

• một trợ giáo hữu ích cho học sinh và sinh viên trong việc tự học

2. Một số gói thủ tục

2.1 Student

Gói lệnh Student hỗ trợ cho việc dạy và học toán.

• Từ Maple 8, gói lệnh Student được phát triển từ gói lệnh student trước đó nhằm
hỗ trợ cho việc dạy và học toán ở đại học và phổ thông. Khai thác khả năng của gói
lệnh này sẽ đem đến cho giáo viên rất nhiều công cụ hỗ trợ mới trong phương pháp
dạy học. Có thể nói rằng gói lệnh này đã đề cập đến tất cả các nội dung toán học
của đại học và phổ thông, cung cấp nhiều lệnh và thủ tục cho các phép toán và
algorithm xuất hiện trong chương trình giảng dạy, cung cấp nhiều công cụ tương
tác dưới dạng Maplet và hỗ trợ việc làm

từng bước các phép toán cơ bản của vi tích phân.

• Gói lệnh Student có 3 gói lệnh con là

5
9 Calculus1

9 LinearAlgebra

9 Precalculus

Để nạp từng gói lệnh, làm như sau: with(Student[Precalculus]):

• Gói lệnh con :

Calculus1: là gói lệnh quan trọng nhất của Student. Nó chứa các công cụ hỗ trợ từ
hướng dẫn thực hiện các phép tính vi tích phân cho đến khảo sát và vẽ đồ thị hàm;
từ việc minh họa vẽ tiếp tuyến đường cong cho đến việc tính diện tích, thể tích mặt
tròn xoay,v.v...

• Sử dụng các Tutor trong các gói của Student và các hỗ trợ tính toán

từng bước.

Ví dụ: Tích tích phân

> with(Student[Calculus1]):

IntTutor()

Sau khi nhấn Enter, một cửa sổ Maplet hiện ra, cho phép ta nhập hàm và
các khoảng cần tính tích phân (nếu là tích phân xác định).

2.2 Plots và Plottools

Gói plots chứa các lệnh cho phép vẽ hình trong không gian 2 và 3 chiều, Gói
plottools công cụ chứa các lệnh cho phép làm việc với các đối tượng hình ảnh:

a. Sự vận động của đồ thị: animate3d(ham_co_tham_so,x=gt_dau..gt_cuoi,


y=gt_dau..gt_cuoi, tham_so =gt_dau..gt_cuoi);

Ý nghĩa: hiển thị sự biến đổi, vận động của đồ thị khi tham số thay đổi trong
khoảng cho trước

6
b.Lệnh plots[display]()
Cú pháp:
plots[display](a,b,c...,insequence=true(false),options);
plots[display](L,insequence=true(false),options);
plots[display](A,options);
plots[display](P,options);
Các tham số:
a,b,c... là cá đồ thị riêng biệt.
L: dãy (list) các đồ thị(ví dụ L:=a,b,c;)
A: mảng một chiều hoặc hai chiều của các đồ thị.
P: đồ thị dưới dạng vận động.
insequence=true(false): nó cho phép hiện từng đồ thị trong dãy(list) theo trình tự
của dãy.
options: các tính chất cơ bản của các lệnh vẽ như plot/options

c. Lệnh plottools[rotate](): quay đồ thị 2D, 3D:


Cú pháp:
plottools[rotate](p,ang,pt_2d); quay một góc ang quanh điểm có tọa độ pt_2d.
plottools[rotate](q,alpha,beta,gamma); quay đồ thị q quanh truc x, y, z với các góc
tương ứng.
plottools[rotate](q,alpha,[pt_3d1,pt_3d2]); quay đồ thị q quanh trục qua
[pt_3d1,pt_3d2]
Các tham số:
p: cấu trúc đồ thị 2D.
q: cấu trúc đồ thị 3D.
ang: góc quay.
pt_2d: tọa độ điểm làm gốc.

7
alpha,beta,gamma:gốc quay quanh trục x,y,z.
[pt_3d1,pt_3d2]:

d.Lệnh plottools[scale](): co giãn đồ thị


Cú pháp:
plottools[scale](p,a,b,pt_2d);
plottools[scale](p,a,b,c,pt_3d);
Các tham số:
a,b,c: là hệ số co giãn theo các trục x,y,z.
pt_2d,pt_3d: tâm co giãn.

e.Lệnh plottools[translate](p,a,b): Lệnh tịnh tiến đồ thị.


Lệnh này tác động lệnh đồ thị p cho kết quả là tịnh tiến đồ thị này đến tọa độ mới
(a,b)
Cú pháp:
plottools[translate](p,a,b); "dịch chuyển tịnh tiến trong 2D"
plottools[translate](q,a,b,c); "dịch chuyển tịnh tiến trong 3D"
Các tham số:
p,q: cấu trúc đồ thị cần dịch chuyển tịnh tiến.
a,b,c là các số thực (chính là tọa mới)

d.. Đưa chữ vào chuyển động.

Trong cả hình vẽ 2 và 3 chiều bằng gói plot chúng ta đều có thể đưa tiêu đề
của hình vẽ vào bằng lựa chọn options: title=”text”. Trong đó “text” là một xâu ký
tự.

Chúng ta cũng có thể chỉ định phông chữ và cỡ chữ cho tiêu đề đó bằng options:
titlefont

8
Mặc định thì title chỉ hiện thị trên một dòng, điều đó sẽ khó khăn nếu title quá dài.
Để title có thể trải trên 2 hay nhiều dùng, chúng ta có thể thêm lệnh \n vào trong
“text” để đưa đoạn text tiếp theo xuống dòng mới.

2.3 Một số lệnh

2.3.1Cấu Trúc Dữ Liệu Dãy

Lệnh Tạo Dãy

seq ( f (i) , i=low..hight );

Khai báo này sẽ tạo ra một dãy bằng cách thay thế gía trị i trong f(i) bởi các số
nguyên liên tiếp nằm trong giới hạn tứ low đến hight .
seq ( f(x) , x=expression );

Khai báo này sẽ tạo ra một dãy mà mỗi thành phần của nó được sinh bằng cách cho
hàm f tác dụng lên một thành phần (operand ) của biểu thức expression . Giá trị của
expression thường là một tập hợp hay danh sách nào đó , và cũng có thể là bất cứ
cấu trúc dữ liệu nào khác mà lệnh op có thể áp dụng được , chẳng hạn như tổng
hay tích .
Dãy ( sequence ) là một nhóm những đối tượng của Maple được sắp xếp có thứ tự
và ngăn cách nhau bởi dấu phẩy . Chẳng hạn như a,b,c là một biểu thức dãy . Dãy
có thể được gán làm giá trị cho các biến , ví dụ ta có thể gán dãy a,b,c cho biến x
bằng lệnh

x:=a,b,c .
Dãy được dùng vào nhiều mục đích khác nhau trong Maple : dãy được dùng để xây
dựng tập hợp và danh sách , dãy cũng được dùng trong việc truyền đối số cho các
hàm có nhiều tham biến . Một số hàm trong Maple cho cho kết qủa dưới dạng dãy .
Chẳng hạn hàm solve() đôi khi cho một dãy các đáp số khi bài toán có nhiều hơn
một nghiệm . Khi hàm op() nhận đối số là một biểu thức , nó cũng cho một dãy bao

9
gồm tất cả các thành phần trong biểu thức nhập vào . Ký hiệu đặc biệt NULL thay
thế cho dãy trống ( dãy không chứa gì cả ) . Sự định giá hoàn toàn ( full evaluation
) được Maple tự động áp dụng trong qúa trình tạo ra dãy , do vậy dãy các dãy được
đơn giản thành một dãy . Chẳng hạn nếu biến s1 được gán bởi dãy a,b,c trongd đó
các biến a,b,c là các biến chứ được gán giá trị thì lệnh

s2:=s1,d sẽ gán cho biến s2 dãy a,b,c,d và s3:=s1,NULL,s1 sẽ gán cho biến s3 dãy
a,b,c,a,b,c .
Các hàm op() và nops() không được phép sử dụng cho dãy . Nguyên nhân là do
Maple dùng các dãy làm đối số truyền cho các hàm . Do đó lời gọi hàm op(s1)
được định giá thành op(a,b,c) , nhưng do hàm op chỉ nhận nhiều nhất 2 đối số : đối
số đầu là một số nguyên hay một phạm vi số ( tức là một mảng số nguyên liên tiếp
, thí dụ như 2..4 là mảng các số nguyên trong phạm vi từ 2 đến 4 ) , còn đối số thứ
2 là một biểu thức do đó lệnh trện sẽ bị Maple báo lỗi .
Hàm seq() rất thuận tiện cho việc tạo ra một dãy các phần tử phụ thuộc tham số .
Như trình bày ở phần khai báo seq() sẽ tạo ra một dãy các phần tử theo một công
thức hay một phép gán nào đó .
Thông qua sự biến đổi các chỉ số trong phạm vi các số nguyên cho một biểu thức
,ta thu được một dãy ( hay nói cách khác , trong trường hợp này có thể xem dãy
như là tập giá trị của một hàm trên một dải số nguyên nào đó ) .
Lệnh seq() thực hiện khá giống lệnh sum() trong việc áp dụng mỗi giá trị của chỉ
mục trong phạm vi cho trước vào hàm để thu được các phần tử của dãy . Lệnh
seq() tạo ra một dãy bằng cách tác dụng hàm f lên mỗi thành phần của danh sách
cho trước x :

2.3.2 Vòng lặp for:

Vòng lặp là cấu trúc được ứng dụng rộng rãi. Trong phần này chúng ta quan
tới cách sử dụng nó để tạo ra dãy cấu trúc đồ thị để hiện thị như hình ảnh trong

10
sản xuất hoạt ảnh. Vòng lặp rất hữu ích khi cấu trúc của dãy là đủ phức tạp mà
thủ tục seq không thể biểu diễn rõ rang.Vòng lặp for cúng cấp một cấu trúc lặp lại
việc thực hiện một nhóm các câu lệnh. Một trong các dạng của nó là số lần lặ
được chỉ ra bằng một biến có quy luật như số đếm. Cú pháp chung là:

for i from m by j to n do

statement 1;

statement 2;

...

statement k

end

Giả thiết rằng j là số dương và biến lặp i được khởi tạo từ m, nếu i<= n thì
các câu lệnh từ 1 tới k trong than vòng lặp được thực hiện. Sau đó i được tăng lên
bởi j và nếu i<= n thì dãy các câu lệnh trong than vòng lặp lại được thực hiên một
lần nữa. nó còn được tiến hành tới khi kiểm tra i<= n là sai, tại điểm đó thân vòng
lặp không được thực hiện nữa và phép lặp kết thúc. Bất kỳ một giá trị mà có thể
được yêu cầu để xác định n chỉ được thực hiện một lần khi bắt đầu vòng lặp, và
không thay đổi sau mỗi làn lặp. Chỉ số mặc đinh lặp là 1 j =1 và có thể bỏ qua
đặc tả by j. Thực tế, m được mặc định là 1 cũng khá nhiều, khi đó đặc tả from m
cũng có thể bỏ qua trong trường hợp này. Nếu j là một số âm, thì I sẽ đếm ngược
từ m tới n, và kiểm tra để cho vào vóng lặp mỗi lần i>= n.

Thông thường, bản chất của việc lặp của một vòng lặp là sử dụungj giá trị
tích lũy của cái gì đó hoặc của đối tượng. ví dụ:

Trong phương pháp tương tự, ta có thể sử dụng vòng lặp để sinh ra một dãy.

Một dạng khác của vòng lặp for là thực hiện lặp thân vòng lặp với mỗi giá trị của
biến điều khiển trong T, T là một dãy, danh sách hay tập hợp. Bất cứ giá trị nào
11
có thể được yêu cầu để xác định T chỉ được thực hiên duy nhất một lần lúc bắt
đầu vòng lặp và không thay đổi trong quá trình lặp. Cú pháp chung là:

for i in T do

statement 1;

statement 2;

...

statement k

end do;

2.3.3 Vòng lặp while

while condition do

statement 1;

Vòng lặp white thực hiện lặp nhóm câu lệnh miễn là điều kiện lặp còn đúng. Cú
pháp chung là:

statement 2;

...

statement k

end do

nếu điều kiện lặp sai, thân vòng lặp sẽ không được thực hiện và vòng lặp kết
thúc.

Mapke cũng cho phép nhóm câu lênh trong thân chương trình lặp là rỗng. Nó
cúng cho phép dùng hỗn hợp lặp for… while như ví dụ dưới đây tìm số nguyên
đầu tiên có mũ 3 vượt quá 10!

12
III. Nội dung bài toán
1. Ví dụ giới thiệu

Một bài toán hay gặp là tìm hàm mật độ của ĐLNN Y=f(X) khi cho biết
phân phối của X. Ta chỉ hạn chế xét các ĐLNN một chiều. Ứng dụng Maple ta
có thể tiến hành giải quyết loại bài tập này một cách dễ dàng.

-Ví du 1: Cho X có phân phối chuẩn tắc N(0,1). Tìm hàm mật độ của
ĐLNN .

> with(Statistics):

> X:=RandomVariable(Normal(0,1));

Y:=X^2;

> PDF(Y,x);

- Ví dụ 2: Cho X1 ~N(0,1), X2 có phân phối đều trên [-2,2]. Tìm hàm mật
độ của Y=X1+x2 biết rằng X1 và X2 độc lập.

> with(Statistics):

> X1:=RandomVariable(Normal(0,1));

X2:=RandomVariable(Uniform(-2,2));

Y:=X1+X2;

> PDF(Y,x);

> convert(%,Int);

13
> combine(%);

Để có thể nhanh chóng tra cứu hàm mật độ dạng tổng quát cũng như xem
hình dạng đồ thị của nó trong từng trường hợp cụ thể của một số phân phối liên tục
thường gặp, Em đã viết một giao diện có cấu trúc như hình sau :

14
Khi click vào các button tương ứng (như Normal(a,b), ChiSquare(n),…) ta
sẽ thu được hàm mật độ tương ứng dạng tổng quát. Để vẽ đồ thị, ta sử dụng các
button plot bên dưới với chú ý: Nếu hàm mật độ chứa tham số a,b thì dùng hàm
Plot(a,b),….và khi vẽ đồ thị, ta có thể thay đổi các giá trị tham số ( mặc định mình
đều cho chúng bằng 1).

Ví dụ : Tìm hàm mật độ của Normal(a,b) và vẽ đồ thị trong trường hợp a=1,b=2

15
2. Code chương trình :
> restart;

> with(Statistics):

> with(Maplets[Elements]):

> vdpp:=Maplet([

[Label("Cac ham mat do xac suat co ban",'font'=Font(16,bold),foreground=blue)],

[Button("Normal(a,b)",'onclick'='no'),

Button("Beta(a,b)",'onclick'='be'),

Button("Cauchy(a,b)",'onclick'='ca'),

Button("Poisson(lambda)",'onclick'='po'),

Button("ChiSquare(n)",'onclick'='ch')],[

Button("Gamma(a,b)",'onclick'='ga'),

Button("StudentT(n)",'onclick'='st'),

Button("Laplace(a,b)",'onclick'='la'),

Button("Exponential(lambda)",'onclick'='ex'),

Button("Uniform(a,b)",'onclick'='un')],

[Button("LogNormal(a,b)",'onclick'='lognorm'),

Button("FRatio(a,b)",'onclick'='fr')],

[MathMLViewer['m'](height=130)],

["a=",TextField['a1'](width=3,"1"),"b=",TextField['b1'](width=3,"1"),

"lambda=",TextField['l1'](width=3,"1"),"n=",TextField['n1'](width=3,"1")],

[Button("Plot(a,b)",Evaluate('p'='plot(subs(a=a1,b=b1,rhs(f)),x=-infinity..infinity)')),

Button("Plot(n)",Evaluate('p'='plot(subs(n=n1,rhs(f)),x=-infinity..infinity)')),

Button("Plot(lambda)",Evaluate('p'='plot(subs(lambda=l1,rhs(f)),x=-infinity..infinity)')),

Button("Help",Evaluate('function'='Maplets[Display](helppp)')),

Button("Thoat",Shutdown())],

[Plotter['p']( height=300)],

16
[TextField['f'](visible=false)]

],

Action['no'](Evaluate('m'='F(x)=PDF(Normal(a,b),x)'),Evaluate('f'='F(x)=PDF(Normal(a,b),x)')),

Action['be'](Evaluate('m'='F(x)=PDF(Beta(a,b),x)'),Evaluate('f'='F(x)=PDF(Beta(a,b),x)')),

Action['ca'](Evaluate('m'='F(x)=PDF(Cauchy(a,b),x)'),Evaluate('f'='F(x)=PDF(Cauchy(a,b),x)')),

Action['po'](Evaluate('m'='F(x)=PDF(Poisson(lambda),x)'),Evaluate('f'='F(x)=PDF(Poisson(lambd
a),x)')),

Action['ch'](Evaluate('m'='F(x)=PDF(ChiSquare(n),x)'),Evaluate('f'='F(x)=PDF(ChiSquare(n),x)'))
,

Action['ga'](Evaluate('m'='F(x)=PDF(Gamma(a,b),x)'),Evaluate('f'='F(x)=PDF(Gamma(a,b),x)')),

Action['st'](Evaluate('m'='F(x)=PDF(StudentT(n),x)'),Evaluate('f'='F(x)=PDF(StudentT(n),x)')),

Action['la'](Evaluate('m'='F(x)=PDF(Laplace(a,b),x)'),Evaluate('f'='F(x)=PDF(Laplace(a,b),x)')),

Action['ex'](Evaluate('m'='F(x)=PDF(Exponential(lambda),x)'),Evaluate('f'='F(x)=PDF(Exponenti
al(lambda),x)')),

Action['un'](Evaluate('m'='F(x)=PDF(Uniform(a,b),x)'),Evaluate('f'='F(x)=PDF(Uniform(a,b),x)')),

Action['lognorm'](Evaluate('m'='F(x)=PDF(LogNormal(a,b),x)'),Evaluate('f'='F(x)=PDF(LogNorm
al(a,b),x)')),

Action['fr'](Evaluate('m'='F(x)=PDF(FRatio(a,b),x)'),Evaluate('f'='F(x)=PDF(FRatio(a,b),x)'))

):

helppp:=Maplet([

Label("Huong dan su dung:",'font'=Font(15,italic)),

Label("Cac ham phan phoi chua tham so a,b thi dung chuc nang Plot(a,b) de ve do \n thi, va chu y
khi ve do thi can nhap them gia tri cua a va b.Cac chuc nang \nve do thi khac cung hoan toan tuong
tu.")

]):

Maplets[Display](vdpp);

17
KẾT LUẬN
Qua bài báo cáo này chúng ta đã trình bày những bước cơ bản để lập trình
trong Maple, cách viết các thủ tục và tạo thư viện cụ thể. Từ đó có thể xây dựng
nên nhiều chương trình khác phục vụ cho giảng dạy và học tập. Và có thể nhận
thấy rằng nếu khai thác tốt các tính năng của Maple sẽ đem lại cho ta một công cụ
rất hiệu quả trong học tập, nghiên cứu khoa học và trong nhiều lĩnh vực khác nữa...

Mặc dù vậy, do những hiểu biết và sử dụng chương trình của chúng em còn
nhiều hạn chế nên bài tập này còn đơn giản và có nhiều thiếu sót. Nhưng qua đó
chúng em đã hiểu thêm về một công cụ hỗ trợ tính toán mạnh mẽ với những nguồn
dữ liệu và thư viện phong phú để giải bài toán.

Chúng em xin chân thành cảm ơn thầy giáo NGUYỄN HỮU ĐIỂN đã giúp
đỡ để chúng em hoàn thành bài tập này!

TÀI LIỆU THAM KHẢO

1. Hướng dẫn và sử dụng Maple V - Nguyễn Hữu Điển

2. Tài liệu lấy trên Internet:

http://dayvahoc.net

http://www.google.com

18

You might also like