Sở dĩ emchọn môn phơng pháp tính để ứng dụng mô hình trên vì: việc ra đề phơng pháp tính có lẽ là vất vả nhất trong tất cả các mônvì phải tính toán rất nhiều với những con số dài, hơn th
Trang 1Lời nói đầu
Trong quá trình giảng dạy, ngoài việc chuẩn bị giáo án, lênbục giảng thì việc ra đề thi, ra bài tập cho sinh viên luyện tập
là việc làm không thể thiếu đối với mỗi thầy cô Và công việccủa các thầy cô còn vất vả hơn gấp bội khi phải ra những đề
đòi hỏi khối lợng tính toán lớn, đòi hỏi độ chính xác đến 6-7 số
lẻ sau dấu phảy Mặc dù hiện nay các thầy cô có máy tính điện
tử cùng các chơng trình phần mềm tính toán rất mạnh hỗ trợ nh:Mathematica, Maple, Mathlap Nhng các chơng trình này chỉ hỗtrợ tính toán ra kết quả cuối cùng trong khi đó đáp án của một
đề thi thì lại đòi hỏi giải theo từng bớc Do đó các thầy cô lạiphải tính tay vật lộn với những con số, và mồ hôi lại tiếp tục lăndài mỗi khi mùa thi tới
Sau năm năm học tập, em sắp phải xa mái trờng Bách Khoathân yêu, xa thầy cô không quản vất vả cho em những kiến thức
để vững chắc bớc vào đời Với những tình cảm sâu sắc màcác thầy cô giành cho em, đã giúp em vợt qua rất nhiều khó khăn
để hoàn thành đồ án tốt nghiệp với chơng trình: “Trợ giúp ra
đề phơng pháp tính ExamMaker (Examination Maker) Đề tài
này chính là món quà nhỏ em dành tặng các thầy cô giúp cácthầy cô vơi đi nỗi vất vả trong công việc ra đề thi, ra bài tập.Chơng trình có thể trợ giúp các thầy cô ra đề tự động, tạo đáp
án đầy đủ…
Do thời gian làm đồ án có hạn nên em không thể tạo hệthống trợ giúp ra đề cho tất cả các môn học Nhng em cũng đãxây dựng đợc một mô hình ra đề có tính mở cho phép ra đềbất cứ môn học nào bằng việc viết thêm các môdun cho môn học
đó Hệ thống sẽ tự động cập nhật môdun đó vào Sở dĩ emchọn môn phơng pháp tính để ứng dụng mô hình trên vì: việc
ra đề phơng pháp tính có lẽ là vất vả nhất trong tất cả các mônvì phải tính toán rất nhiều với những con số dài, hơn thế nữaviệc tính toán còn đòi hỏi độ chính xác cao Mặt khác môn ph-
ơng pháp tính là môn học cơ sở mà tất cả sinh viên trờng kỹthuật nào cũng phải học Do đó cần một khối lợng lớn đề thi và
Trang 2bài tập cho sinh viên luyện tập và thi Nh vậy yêu cầu có một
ch-ơng trình trợ giúp ra đề phch-ơng pháp tính là hết sức cần thiết
và cấp bách
Qua đồ án tốt nghiệp này, em cũng đã đợc nghiên cứu, họctập và thử sức mình với một đề tài thực tế, với rất nhiều kỹthuật khó Trong báo cáo này em xin trình bày năm phần lớn sau:
Phần 1 Tổng quan: phần này giới thiệu một cách tổngquan đồ án tốt nghiệp Tổng quan về chơng trình trợ giúp
ra đề phơng pháp tính, về các kỹ thuật đặc biệt mà em
đã sử dụng để tạo ra chơng trình
Phần 2 Cơ sở toán học : phần này cung cấp cơ sở toánvững chắc cho đồ án tốt nghiệp, đồng thời cung cấp cácthuật toán(dới dạng sơ đồ khối) cho chơng trình
Phần 3 Khảo xát và xác lập giải pháp : phần này sẽ trìnhbày về những nghiên cứu về mô hình ra đề hiện tại, khảoxát thực tế Và từ đó đa ra những giải pháp cho chơngtrình
Phần 4 Phân tích thiết kế: phần này sẽ trình bày chi tiết
về việc phân tích và thiết kế nhằm xây dựng chơngtrình
Phần 5 Hớng dẫn sử dụng chơng trình
Ngoài ra còn có các phụ lục:
Phụ lục 1: Kỹ thuật lập trình COM
Phụ lục 2: Tổng quan về XML
Để hoàn thành đợc đồ án tốt nghiệp đúng kỳ hạn, em đãvận dụng hết kiến thức, khả năng và nỗ lực của mình Tuy nhiênvẫn không thể tránh khỏi những thiếu sót Em rất mong nhận đ-
ợc những ý kiến đóng góp từ phía các thầy cô và các bạn để
ch-ơng trình đợc hoàn thiện hơn
Em xin chân thành cảm ơn!
Hà nội tháng 5 năm 2005
Trang 4Lời cảm ơn
Sau mời bảy năm ăn học chuẩn bị đầy đủ hành trang bớcvào đời, em đã từng bớc qua rất nhiều những nấc thang để tiếntới thành công Và ngời đã dìu dắt em lên những bậc thang đókhông ai khác chính là tất cả những thầy cô đã dạy em trongnhiều năm qua Em xin gửi lời cảm ơn chân thành nhất tới tất cảcác thầy cô!
Em xin đợc bày tỏ lòng biết ơn sâu sắc tới cô giáo hớng dẫncủa em cô Phạm Huyền Linh!!! Cô là ngời đã dìu dắt em bớc lênnấc thang quan trọng nhất của cuộc đời Cô đã đa em đến với
đề tài này, tiếp cận với những vấn đề thực tế và nhiệt tìnhdẫn dắt em trong suốt quá trình làm đồ án, ngay cả khi sứckhoẻ cô không đợc tốt Cô chính là chỗ dựa tinh thần và kiếnthức vững chắc nhất cho em hoàn thành đồ này
Bên cạnh đó em cũng xin cảm ơn tất cả các thầy cô giáotrong khoa Toán-Tin đã đóng góp ý kiến và động viên em trongnhững ngày tháng em học ở khoa
Để cho em đợc nh ngày hôm nay là cả một sự tảo tần, hysinh của mẹ Em xin đợc gửi lời cảm ơn sâu sắc tới mẹ của em!
Và em xin hứa sẽ đạt kết quả cao trong học tập để mẹ vui lòng
Cuối cùng em xin gửi lời cảm ơn chân thành tới các anh chị,bạn bè đã luôn ở bên cạnh động viên, giúp đỡ em trong những lúckhó khăn Cảm ơn các anh chị ở nhóm Yapi, lớp Tin quản lý K44
đã cung cấp cho em những kinh nghiệm quý báu của những ngời
đi trớc Cảm ơn bạn Phạm Quang Huy! bạn đã luôn động viêngiúp đỡ em trong việc nghiên cứu các kỹ thuật lập trình khó
Đồ án tốt nghiệp của em chính là món quà em giành tặngcho thầy cô, mẹ, anh chị và bạn bè Một lần nữa em xin cảm ơntất cả!!
Trang 5
Sơ đồ tóm tắt đồ án tốt nghiệp
Trang 6Mục lục
Lời nói đầu 1
Lời cảm ơn 3
Sơ đồ tóm tắt đồ án tốt nghiệp 4
Mục lục 5
Phần 1 Tổng quan 10
Chơng 1 Tổng quan về chơng trình ExamMaker 11
1.1 Những điểm nổi bật của chơng trình ExamMaker.11 1.1.1 ExamMaker cho phép tạo đề một cách tự động 12
1.1.2 ExamMaker cho phép tạo đề bán tự động 12
1.1.3 ExamMaker có khả năng tự động giải đề theo từng bớc 12 1.1.4 ExamMaker cho phép quản lý ngân hàng đề 13
1.1.5 ExamMaker đợc thiết kế theo công nghệ COM 13
1.1.6 ExamMaker tích hợp nhiều kỹ thuật khó 13
1.1.7 ExamMaker có giao diện đẹp, tiện dùng 13
1.2 ứng dụng của ExamMaker 14
1.3 Mục tiêu của ExamMaker 14
1.4 Hớng phát triển của ExamMaker 14
Chơng 2 Những kỹ thuật đặc biệt dùng trong chơng trình ExamMaker 15
2.1 Kỹ thuật lập trình COM 15
2.1.1 Giới thiệu 15
2.1.2 Kỹ thuật 15
2.2 Kỹ thuật liên kết giữa Net với Mathematica 15
Trang 72.4 Kỹ thuật trình VBA(Visual Basic for Application) 15
Phần 2 Cơ sơ toán học cho chơng trình ExamMaker 16
Chơng 1 Sai số_số xấp xỉ 17
1.1 Khái niệm số xấp xỉ, sai số tuyệt đối và tơng đối 17
1.1.1 Số xấp xỉ 17
1.1.2 Sai số tuyệt đối 17
1.1.3 Sai số tơng đối 18
1.2 Cách viết số xấp xỉ 19
1.2.1 Chữ số có nghĩa 19
1.2.2 Chữ số đáng tin 19
1.2.3 Cách viết số xấp xỉ 19
1.3 Sự quy tròn số và sai số quy tròn 20
1.3.1 Khái niệm về sự quy tròn và sai số quy tròn 20
1.3.2 Nguyên tắc quy tròn 20
1.4 Các định lý về sai số 21
1.4.1 Sai số của một tổng, hiệu 21
1.4.2 Sai số của một tích 21
1.4.3 Sai số của một thơng 21
1.4.4 Tổng quát 21
1.5 Sai số phơng pháp_sai số tính toán 22
Chơng 2 Tính gần đúng nghiệm thực của phơng trình đại số và siêu việt 23
2.1 Đặt vấn đề 23
2.2 Khoảng phân ly nghiệm 23
2.3 Các phơng pháp tính gần đúng nghiệm 24
2.3.1 Phơng pháp chia đôi 24
2.3.2 Phơng pháp lặp 26
Trang 82.3.3 Phơng pháp dây cung (còn gọi là phơng pháp cát
tuyến) 29
2.3.4 Phơng pháp tiếp tuyến(còn gọi là phơng pháp Niutơn) 31
Chơng 3 Giải hệ phơng trình đại số tuyến tính 34
3.1 Đặt vấn đề 34
3.2 Các phơng pháp tính gần đúng nghiệm 34
3.2.1 Phơng pháp lặp đơn 34
3.2.2 Phơng pháp lặp Dâyđen 36
Chơng 4 Đa thức nội suy và phơng pháp bình phơng tối thiểu 39 4.1 Bài toán nội suy 39
4.2 Tính giá trị của đa thức bằng sơ đồ HOóCNE 39
4.3 Đa thức nội suy Lagrăng 40
4.3.1 Thành lập đa thức nội suy Lagrăng 40
4.3.2 Đánh giá sai số 40
4.3.3 Sơ đồ khối của đa thức nội suy Lagrăng 40
4.3.4 u nhợc điểm của đa thức nội suy Lagrăng 41
4.4 Đa thức nội suy Niutơn 41
4.4.1 Đa thức nội suy Niutơn mốc tuỳ ý 41
4.4.2 Đa thức nội suy Niutơn mốc cách đều 43
4.4.3 Sơ đồ khối của phơng pháp 44
4.4.4 u nhợc điểm của phơng pháp 48
4.5 Phơng pháp bình phơng tối thiểu 48
4.5.1 Nội dung của phơng pháp 48
4.5.2 Sơ đồ khối của phơng pháp 49 Chơng 5 Tính gần đúng đạo hàm và tích phân xác định 50
Trang 95.1.1 Đặt vấn đề 50
5.1.2 Công thức tính gần đúng đạo hàm cấp một 50
5.1.3 Sơ đồ khối của phơng pháp 50
5.2 Tính tích phân 50
5.2.1 Đặt vấn đề 50
5.2.2 Các công thức tính gần đúng tích phân 51
5.2.3 Sơ đồ khối của phơng pháp tính tích phân gần đúng 52 Chơng 6 Giải gần đúng phơng trình vi phân thờng 53
6.1 Đặt vấn đề 53
6.2 Phơng pháp ơle_phơng pháp ơle cải tiến 53
6.2.1 Phơng pháp ơle 53
6.2.2 Phơng pháp ơle cải tiến 53
6.2.3 Sơ đồ khối của phơng pháp 53
6.2.4 u nhợc điểm của phơng pháp 53
6.3 Phơng pháp Runge_Kutta 53
6.3.1 Runge_Kutta cấp 3 54
6.3.2 Runge_Kutta cấp 4 54
6.3.3 Sơ đồ khối của phơng pháp 54
6.3.4 u nhợc điểm của phơng pháp 54
Phần 3 Xây dựng chơng trình ExamMaker 55
Chơng 1 Khảo sát và xác lập giải pháp 56
1.1 Khảo sát mô hình ra đề thủ công 56
1.1.1 Mô hình ra đề thủ công 56
1.1.2 Nhận xét 56
1.1.3 Giải pháp 57
1.2 Khảo sát thực tế 57
Trang 101.2.1 Khảo sát các hệ thống ra đề hiện có 57
1.2.2 Khảo sát nhu cầu 57
1.2.3 Kết luận 57
1.3 Khảo sát các dạng bài môn phơng pháp tính 57
1.3.1 Bài toán 1 : Tính gần đúng nghiệm thực của phơng trình đại số và siêu việt 58
1.3.2 Bài toán 2 : Giải hệ phơng trình đại số tuyến tính 59 1.3.3 Bài toán 3 : Đa thức nội suy và phơng pháp bình ph-ơng cực tiểu 59
1.3.4 Bài toán 4 : Tính gần đúng đạo hàm và tích phân 59 1.3.5 Bài toán 5 : Giải gần đúng phơng trình vi phân th-ờng 59 1.3.6 Bài toán 6: bài toán dới dạng lý thuyết 59
1.4 Xác lập giải pháp 59
1.4.1 Phạm vi và quy mô 59
1.4.2 Các chức năng đặc biệt 59
1.4.3 Xác định công cụ và phơng pháp 59
1.4.4 Đánh giá sơ bộ và dự kiến kế hoạch thực hiện 59
Chơng 2 Phân tích và thiết kế hệ thống 60
2.1 Phân tích hệ thống 60
2.1.1 Sơ đồ chức năng 60
2.1.2 Phân tích giao diện (interface) của các đối tợng COM 61 2.1.3 Sơ đồ luồng dữ liệu ở các mức 64
2.1.4 Sơ đồ thực thể quan hệ 64
2.2 Thiết kế hệ thống 64
Trang 112.2.1 Thiết kế cơ sở dữ liệu 64
2.2.2 Thiết kế các đối tợng COM 66
2.2.3 Thiết kế chơng trình 66
Kết luận 67
Tài liệu tham khảo 68
Trang 12PhÇn 1 Tæng quan
Trang 13Chơng 1 Tổng quan về chơng trình
ExamMaker
Chơng trình ExamMaker là một chơng trình trợ giúp ra
đề, ra bài tập cho môn phơng pháp tính ý tởng của ExamMaker
là tạo ra một chơng trình có thể trợ giúp thầy cô ra đề thi, hoặc
ra bài tập, tạo một đáp án đầy đủ với lời giải cụ thể theo từng
b-ớc của bài toán Đồng thời chơng trình còn có khả năng quản lýngân hàng đề
1.1 Những điểm nổi bật của chơng trình
ExamMaker
Nhìn một cách tổng quan, chơng trình ExamMaker có các
điểm nổi bật sau:
Trang 141.1.1 ExamMaker cho phép tạo đề một cách tự động.
Môn phơng pháp tính là một môn cơ sở bắt buộc đối vớisinh viên kỹ thuật, là môn giúp sinh viên rèn luyện các phơngpháp và kỹ năng tính toán chính xác Do đó khối lợng bài tậpgiao cho sinh viên luyện tập và đề thi là rất lớn Để giảm tốithiểu thời gian ra đề, các thầy cô có thể nhờ chơng trình sinhngẫu nhiên đề bài
Do đặc trng của môn phơng pháp tính có rất nhiều dạngbài, và mỗi một dạng bài có nhiều phơng pháp tính khác nhau
Tạo đề bán tự
Thiết kế theo công nghệ COM
Tích hợp nhiều kỹ thuật khó
Giao diện
đẹp tiện dùng
Tạo đề tự
động
Ch ơng trình ExamMaker
Trang 15trình đại số và siêu việt; Giải hệ phơng trình đại số tuyếntính…Nh vậy với mỗi dạng bài ExamMaker phải có cách sinh ngẫunhiên khác nhau Nhng sinh ngẫu nhiên mà vẫn đảm bảo tínhhợp lý của đề bài quả thật là việc vô cùng phức tạp.
Trong trờng hợp đề bài đợc sinh tự động không vừa ý cácthầy cô các thầy cô có thể chuyển sang phần ra đề bán tự
động
1.1.2 ExamMaker cho phép tạo đề bán tự động.
ExamMaker cho phép các thầy cô tạo đề bán tự động bằng cáccách nh sau:
Cho trớc một vài tham số sau đó nhờ chơng trình tìm nốtcác tham số còn lại với điều kiện nào đó
Ví dụ nh trong trờng hợp giải gần đúng hệ phơng trình
đại số tuyến tính Ax=b: các thầy cô cho hệ số ma trận A,véctơ b, yêu cầu sai số giả sử là Các thầy cô có thểnhờ chơng trình xác định đợc x(0) sao cho số bớc lặp chỉ
là 3
Trợ giúp xác định khoảng phân ly bằng đồ thị hàm số đốivới dạng bài Tính gần đúng nghiệm thực của phơng trình
đại số và siêu việt
Trợ giúp ra đề từ đề đã có sẵn bằng việc thay đổi một số
hệ số
1.1.3 ExamMaker có khả năng tự động giải đề theo
từng bớc.
Khi đề bài đã đợc tạo, các thầy cô sẽ nhờ ExamMaker tự
động giải bài toán đó Đây là một chức năng rất độc đáo củachơng trình vì các phần mềm tính toán hiện nay hầu nh chỉ
đa ra đợc kết quả cuối cùng mà không trình bày đợc những kếtquả trung gian ở từng bớc giải của bài toán Dới đây là nhữngkhả năng tự động giải đề của ExamMaker:
ExamMaker hỗ trợ giải bài toán một cách đầy đủ theo từngbớc một, giống nh làm thủ công
Trang 16 Chơng trình cũng trợ giúp chức năng tạo đáp án cho một
đề thi hoàn chỉnh
ExamMaker còn hỗ trợ giải lấy kết quả ngay trong trờng hợpcác thầy cô chỉ muốn xem kết quả để điều chỉnh đềbài
1.1.4 ExamMaker cho phép quản lý ngân hàng đề.
ExamMaker hỗ trợ cơ chế bảo mật, lu trữ, tìm kiếm , sắpxếp đề một cách khoa học Cho nên nó giúp cho các thầy côquản lý ngân hàng đề một cách an toàn và dễ dàng Chơngtrình còn cho phép kết hợp các ngân hàng đề cá nhân thànhmột kho đề chung cho khoa
1.1.5 ExamMaker đợc thiết kế theo công nghệ COM.
Để tiện cho việc nâng cấp, thích ứng với nhiều loại dạngbài, nhiều thuật toán giải, có thể tổng hợp các dạng bài khácnhau thành một đề hoàn chỉnh, chơng trình đã đợc thiết kếtheo công nghệ COM (Component Object Model Technologies)của Microsoft Theo công nghệ này thì ExamMaker đợc cấuthành từ nhiều modun Các modun này có chung một interface
để tơng tác với chơng trình ExamMaker và tơng tác với nhau.ExamMaker tự động thêm một modun nào đó nếu nó đợc cài
Do đó chơng trình ExamMaker hết sức linh động
1.1.6 ExamMaker tích hợp nhiều kỹ thuật khó.
Việc xây dựng chơng trình ExamMaker đòi hỏi em phải
sử dụng rất nhiều công nghệ khó thì mới đáp ứng đợc với nhữngyêu cầu mà bài toán đặt ra Ví dụ nh: Kỹ thuật lập trình COM,
kỹ thuật liên kết giữa Net với Mathematica, kỹ thuật lập trìnhMathematica, kỹ thuật trình VBA(Visual Basic for Application)…
1.1.7 ExamMaker có giao diện đẹp, tiện dùng.
Việc thiết kế giao diện cho chơng trình ExamMaker saocho tiện dùng, đẹp quả là khó Vì môn phơng pháp tính có rấtnhiều công thức toán học, việc trình bày đề gặp phải rất nhều
Trang 17giao diện mạnh nh bộ Developer Express Inc.NET, em đã xâydựng đợc một hệ thống tơng tác với ngời dùng hết sức thân thiện
và bắt mắt
1.2 ứng dụng của ExamMaker
ExamMaker sẽ là một công cụ mạnh giúp các thầy cô ra đề,
ra bài tập phơng pháp tính Thông qua đó nó sẽ góp phần làmtăng chất lợng dạy và học Các thầy cô sẽ nhàn hơn trong côngviệc ra đề, và sinh viên sẽ có nhiều bài tập hơn để luyện tập.Với tính thiết thực của chơng trình, em hy vọng ExamMaker sẽ
đợc ứng dụng rộng rãi trong các trờng đại học kỹ thuật
1.3 Mục tiêu của ExamMaker
Mục tiêu thứ nhất của chơng trình là tạo ra một hệ thống
ra đề thi phơng pháp tính trợ giúp đợc các thầy cô trong việc ra
đề
Mục tiêu quan trọng nhất của chơng trình ExamMaker, là
đã cho em cơ hội học tập phơng pháp làm việc khoa học đểgiải quyết một vấn đề thực tế Ngoài ra sau khi hoàn thành ch-
ơng trình ExamMaker em cũng đã nắm bắt đợc rất nhiều kỹthuật thiết kế, lập trình khó, và cũng đã rút ra đợc nhiều kinhnghiệm cho bản thân
1.4 Hớng phát triển của ExamMaker
Chơng trình ExamMaker là một chơng trình mở Do đóviệc phát triển chơng trình rất dễ dàng, bằng việc viết thêmmodun (các modun này đợc viết độc lập với chơng trình), ch-
ơng trình sẽ tự động cập nhật modun trên
Chơng trình ExamMaker đợc thiết kế thành một mô hình
ra đề hoàn thiện Nếu áp dụng mô hình này, thì ta có thể tạo
đợc chơng trình ra đề cho bất kỳ một môn nào đó chứ khôngchỉ riêng môn phơng pháp tính Trong tơng lai không xa,ExamMaker sẽ trở thành chơng trình mà có thể ra đề bất cứmôn học nào
Trang 19
PhÇn 2 C¬ s¬ to¸n häc cho ch¬ng
tr×nh ExamMaker
Trang 20Cơ sở toán học cho chơngtrình ExamMaker chính là lýthuyết môn phơng pháp tính Nó cung cấp rất nhiều địnhnghĩa, định lý, phơng pháp tính đảm bảo cho việc xây dựngcác thuật toán trên máy tính.
Lý thuyết môn phơng pháp tính đã đợc trình bày chi tiết
ở các sách giáo trình ở đây em chỉ nêu lên các khái niệm,
định lý, công thức tính và công thức sai số [1] nhằm xây dựngsơ đồ khối của thuật toán mà không đi sâu vào việc chứngminh
Chơng 1 Sai số_số xấp xỉ
Chơng này sẽ giới thiệu cho chúng ta các khái niệm về sai
số, số xấp xỉ Bởi môn phơng pháp tính cung cấp các công cụtính toán gần đúng nên việc xem xét sai số, số xấp xỉ là vôcùng quan trọng
1.1 Khái niệm số xấp xỉ, sai số tuyệt đối và tơng
đối.
1.1.1 Số xấp xỉ
Trong thực tế chúng ta làm việc chủ yếu với số xấp xỉ
Định nghĩa1.1: a gọi là số xấp xỉ của số đúng A, ký hiệu aA, nếu a khác A không đáng kể và đợc dùng thay cho A trong tính toán.
Nếu a<A thì a gọi là xấp xỉ thiếu của A Nếu a>A thì a gọi là xấp xỉ tha của A.
Thí dụ : Số 1.414 Số 1.414 chính là số xấp xỉ của số
1.1.2 Sai số tuyệt đối
Gọi A là số chính xác, a là số xấp xỉ
Định nghĩa1.2: Hiệu (hoặc ) gọi là sai số tuyệt
đối của số xấp xỉ a Trị tuyệt đối:
Trang 21gọi là sai số tuyệt đối của số xấp xỉ a.
Trong thực tế, ta không thể xác định đợc số đúng A, dovậy mà ta cũng không thể có đợc sai số tuyệt đối của số xấp xỉ
a Vì vậy, cùng với khái niệm sai số tuyệt đối ngời ta thêm vào khái niệm sai số tuyệt đối giới hạn.
Định nghĩa1.3: Sai số tuyệt đối giới hạn của một số xấp xỉ a là
số không nhỏ hơn sai số tuyệt đối của số xấp xỉ a.
Do đó, nếu gọi là sai số tuyệt đối giới hạn của số xấp xỉ athì :
(*)
Từ đó suy ra:
Để đơn giản, ta thờng viết dới dạng
Trong thực hành, ngời ta thờng chọn là số nhỏ nhất có thể đợc,thoả mãn (*)
1.1.3 Sai số tơng đối
Trong một số trờng hợp sai số tuyệt đối, sai số tuyệt đốigiới hạn không thể hiện đợc mức độ chính xác của phép đohoặc tính toán Do đó ngời ta đa vào những khái niệm sau:
Định nghĩa1.4: Sai số tơng đối của số xấp xỉ a ký hiệu là :
Với giả thiết A 0.Từ đó:
Định nghĩa1.5: Sai số tơng đối giới hạn của một số xấp xỉ a, ký hiệu , là số không nhỏ hơn sai số tơng đối của số xấp xỉ a Do
đó:
nghĩa là:
Trang 22Suy ra và ta có thể chọn và
Trong thực hành, ngời ta thờng sử dụng sai số tơng đối vàsai số tơng đối giới hạn để đánh giá các phép đo Ví dụ haiphép đo sau:
Phép đo thứ nhất có a1=10m , =0.02 suy ra =
Ví dụ: số 50.25 có 4 chữ số có nghĩa, số 0.0547 cũng có 4 chữ
số có nghĩa
1.2.2 Chữ số đáng tin
Định nghĩa1.7: Cho số thực a đợc biểu diễn dới dạng:
trong đó m là số nguyên, 0 (i=m-1, m-2,…), 0 .
Chữ số gọi là chữ số đáng tin nếu:
và gọi là chữ số nghi ngờ nếu :
Trang 23Ví dụ: Số xấp xỉ a=3.7284 với =0.0047 có 3 chữ số đáng tin là
3, 7, 2 và 2 chữ số nghi ngờ là 8, 4
Rõ ràng nếu là chữ số đáng tin thì những chữ số ởbên trái nó cũng là những chữ số đáng tin, nếu là chữ sốnghi ngờ thì những chữ số ở bên phải nó cũng là những số nghingờ
đơn vị của chữ số ở hàng cuối cùng bên phải
Ví dụ: 50.25 thì (1/2).10-2
Cách này thờng dùng trong các bảng số nh bảng các hàm số lợnggiác, bảng lôgarit…
1.3 Sự quy tròn số và sai số quy tròn.
1.3.1 Khái niệm về sự quy tròn và sai số quy tròn
Sự quy tròn: trong trờng hợp số a có quá nhiều chữ số làmcho việc tính toán, ghi chép trở nên khó khăn, ngòi ta phảingắt bỏ đi một vài chữ số ở cuối và nhận đợc số a1 Việclàm đó đợc gọi là sự quy tròn số
Sai số quy tròn tuyệt đối : chính là trị tuyệt đối của hiệu
a1-a, ký hiệu là
Trang 24 Sai số quy tròn tuyệt đối giới hạn của số đã quy tròn a1, ký
hiệu
1.3.2 Nguyên tắc quy tròn
Phép quy tròn phải đảm bảo cho sai số quy tròn tuyệt đốikhông lớn hơn một nửa đơn vị của chữ số ở hàng giữ lại cuốicùng bên phải
Điều đó có nghĩa là: nếu chữ số bỏ đi đầu tiên 5 thìthêm vào chữ số giữ lại cuối cùng bên phải là một đơn vị; nếuchữ số bỏ di đầu tiên <5 thì để nguyên chữ số giữ lại cuối cùngbên phải
Ví dụ: quy tròn số =1.732050875688…đến chữ số cónghĩa thứ 6, thứ 5, thứ 4 là 1.73205, 1.7321, 1.732
1.4 Các định lý về sai số
Xét các số xấp xỉ x1, x2, x3,…có các sai số tuyệt đối giới hạn
là , , …, và sai số tơng đối giới hạn là , , ,…
1.4.1 Sai số của một tổng, hiệu
Xét tổng(hiệu) sau:
Sai số tuyệt đối giới hạn của tổng(hiệu) trên là :
Sai số tơng đối giới hạn của tổng(hiệu) trên là :
Chú ý hiện tợng mất chính xác khi trừ hai số, nếu trừ hai số xấp
xỉ x1và x2 (x1>0, x2>0) có giá trị gần bằng nhau thì sai số tơng
đối giới hạn của hiệu có thể rất lớn, trong khi đó sai số tơng đốigiới hạn của số trừ và của số bị trừ vẫn nhỏ
1.4.2 Sai số của một tích
Xét tích sau:
Trang 25Sai số tơng đối giới hạn của tích trên là :
Sai số tuyệt đối giới hạn của tích trên là :
1.4.3 Sai số của một thơng
Xét thơng sau: với ( 0)
Sai số tơng đối giới hạn của thơng trên là :
Sai số tuyệt đối giới hạn của thơng trên là :
1.4.4 Tổng quát
Xét trờng hợp tổng quát : u=f(x1, x2, x3,…,xn)trong đó f liên tục, khả vi theo các biến xi
Sai số tuyệt đối giới hạn của u là :
1.5 Sai số phơng pháp_sai số tính toán.
Sai số phơng pháp sinh ra do dùng phơng pháp gần đúng.Sai số tính toán sinh ra do quá tình tính phải làm tròn số Sai sốcủa bài toán là tổng hai sai số trên
Ví dụ: tính chuỗi đan dấu B =
Ta có : B = = BN + RN
Tính BN bỏ RN thì bài toán có sai số phơng pháp
Trong khi tính BN ta làm tròn số có sai số tính toán
Sai số cuẩ bài toán trên là tổng sai số phơng pháp và sai số tínhtoán
Trang 26Chơng 2 Tính gần đúng nghiệm thực của phơng trình đại số và siêu việt
2.1 Đặt vấn đề
Bài toán tìm nghiệm của phơng trình f(x)=0, trong đó f
là hàm số đại số hoặc hàm số siêu việt bất kỳ, đóng một vai tròquan trọng trong khoa học kỹ thuật Tuy nhiên việc giải chínhxác nghiệm của phơng trình lại không hề đơn giản, hay khônggiải đợc đối với phơng trình đại số bậc cao, hoặc siêu việt Mặtkhác các thông số trong kỹ thuật cũng chỉ là số xấp xỉ Nh vậyviệc giải chính xác nghiệm cũng không còn ý nghĩa Do đó việcgiải gần đúng nghiệm và đánh giá sai số của nó là việc vô cùngquan trọng
Chúng ta hãy cùng xem xét về khoảng phân ly nghiệm vàcác phơng pháp giải gần đúng nghiệm trong chơng này Đồngthời em cũng đã xây dựng đợc sơ đồ khối cho mỗi phơng phápnhằm cung cấp thuật toán cho việc lập trình
Trang 27Từ đồ thị hàm số ta có khoảng phân ly nghiệm của phơngtrình trên là (1, 2).
Định lý sau cho ta cách xác định khoảng phân ly nghiệm củaphơng trình
//Định lý: Cho y=f(x) liên tục trong (a,b) có đạo hàm f’(x)
Nếu + f(a), f(b) trái dấu ((f(a).f(b)<0)
+f’(x) không đổi dấu trên khoảng (a,b)
thì (a,b) là khoảng phân ly nghiệm của phơng trình
Có hai cách xác định khoảng phân ly nghiệm:
Trang 28+ Nếu thì là nghiệm đúng của phơng trìnhf(x)=0.
+Nếu , ta chọn một trong hai khoảng (a, ) và ( ,b) mà tại hai nút của khoảng hàm số f(x) có dấu khác nhau, làmkhoảng cách ly nghiệm mới Ta gọi khoảng này là (a1, b1) nó có
độ dài bằng nửa khoảng (a, b)
Ta lại chia đôi khoảng (a1, b1) và tiếp tục làm nh trên…
2.3.1.2 Sự hội tụ của ph ơng pháp.
Dễ dàng thấy phơng pháp chia đôi hội tụ khi ta thực hiệnvô hạn lần việc chia đôi liên tiếp khoảng phân ly (a, b)
2.3.1.3 Sai số của nghiệm gần đúng
Trong thực hành ta không thể thực hiện phơng pháp chia
đôi vô hạn lần, mà ta chỉ có thể thực hiện đợc n phép chia đôi
và lấy nghiệm gần đúng mà thôi (n nguyên dơng và hu hạn) Khi
Ta có thể lấy nghiệm gần đúng nh sau:
x an khi đó sai số của nghiệm gần đúng là:
Trang 29=
KÕt thócNghiÖm
lµ xn
f(an)f(xn)<0bn=xn
an=xn
+
+
-
Trang 30-2.3.1.5 u nh ợc điểm của ph ơng pháp
u điểm: phơng pháp chia đôi là đơn giản, dễ cài đặttrên máy tính, vì mỗi lần áp dụng phơng pháp chia đôi tachỉ phải tính một giá trị của hàm số tại điểm giữa củakhoảng
Nhợc điểm: Phơng pháp chia đôi có tốc độ hội tụ chậm
Bớc 2: chọn x0 [a, b] làm nghiệm gần đúng ban đầu Thayx=x0 vào phơng trình x= , ta nhận đợc nghiệm gần đúngthứ nhất: x1 =
Bớc 3: Từ bớc hai ta có x1, thay x=x1 vào phơng trình x= ta
đợc nghiệm gần đúng thứ hai là x2=
Lặp lại nhiều lần bớc 3, ta nhận đợc các nghiệm gần đúng:
x3=
x4= … (*)
xn=
…Dãy nghiệm gần đúng {xn}, n=1,2,3… hội tụ về nghiệm đúng của phơng trình f(x)=0 khi n + Có nghĩa là :
Trang 31Hay :
2.3.2.2 Sự hội tụ của ph ơng pháp lặp.
Sự hội tụ của phơng pháp lặp phụ thuộc vào cách chọnhàm số Định lý sau đây sẽ cho ta cách chọn đểdãy{xn}, n=1,2, hội tụ về nghiệm đúng
//Định lý : Giả sử (a, b) là khoảng phân ly nghiệm của phơngtrình f(x)=0; và là những hàm số liên tục trong (a, b),với đợc xác định bởi phơng trình x= , tơng đơng với ph-
ơng trình f(x)=0 Nếu đối với thìdãy {xn}, n=1,2,3…nhận đợc từ (*) hội tụ về nghiệm đúng
2.3.2.3 Sai số của nghiệm gần đúng
Để đánh giá độ lệch giữa nghiệm gần đúng xn, nhận đợcbằng phơng pháp lặp, và nghiệm đúng ta có các công thứcsau:
Công thức thứ nhất:
Công thức thứ hai: công thức này cho phép ta xác định đợc số
b-ớc lặp cần thiết để có đợc xn với sai số mong muốn
Trang 32 u điểm : tốc độ hội tụ nhanh, dễ cài đặt trên máy tính.
Nhợc điểm: Tính toán phức tạp hơn phơng pháp chia dôi
2.3.3 Phơng pháp dây cung (còn gọi là phơng pháp
cát tuyến) 2.3.3.1 Nội dung ph ơng pháp
Cho f(x)=0 và khoảng phân ly nghiệm (a, b):
x1<=
Kết thúcNghiệm
là xx=x1
+ -
x1=(x)
+
Trang 33-Để dễ cho việc tính toán ta thêm điều kiện f’(x), f”(x) không
đổi dấu trên khoảng phân ly (a, b)
Bớc 1: Chọn x0=a và d=b nếu f(b) cùng dấu với f”(x) ( chọn x0=b
và d=a nếu f(a) cùng dấu với f”(x))
Bớc 2: Cát tuyến nối điểm (x0, f(x0)) và (d, f(d)) cắt Ox tại x1 (nhhình vẽ trên)
Bớc 3 : Lại nối tiếp các điểm (x1, f(x1)) và (d, f(d)) cắt Ox tại x2
…
Bớc n : Cát tuyến nối (xn-1, f(xn-1) và (d, f(d)) cắt Ox tại xn
Dãy {xn} n=1,2,3… là nghiệm gần đúng của phơng trìnhf(x)=0
Công thức tính xn: Từ phơng trình cát tuyến nối (xn-1, f(xn-1) và(d, f(d)) ta có công thức tính xn là:
2.3.3.2 Sự hội tụ của ph ơng pháp dây cung.
Nếu f(x) có f’(x), f’’(x) không đổi dấu trên khoảng phân ly(a, b), nếu chọn x0 sao cho f(x0) khác dấu với f”(x) thì phơngpháp dây cung hội tụ về nghiệm đúng
2.3.3.3 Sai số của nghiệm gần đúng
Để đánh giá độ lệch giữa nghiệm gần đúng xn, nhận đợcbằng phơng pháp dây cung và nghiệm đúng ta có các côngthức sau:
Trang 35-Hình 3 Lu đồ thuật toán tìm nghiệm gần đúng bằng phơng pháp
dây cung
2.3.3.5 u nh ợc điểm của ph ơng pháp
Ưu điểm : Số lơng tính toán ít ( khi đã biết xn để tính xn+1
ta chỉ phải tính một giá trị của hàm f tại điểm xn với n>0 )
Nhợc điểm : Tốc độ hội tụ chậm chỉ hội tụ tuyến tính
2.3.4 Phơng pháp tiếp tuyến(còn gọi là phơng pháp
Niutơn) 2.3.4.1 Nội dung ph ơng pháp
Cho f(x)=0 và khoảng phân ly nghiệm (a, b): chọn x
Tiếp tuyến tại (x0, f(x0)) cắt Ox tại x1
Tiếp tuyến tại (x1, f(x1)) cắt Ox tại x2
…
Tiếp tuyến tại (xn-1, f(xn-1)) cắt Ox tại xn
Dãy {xn} n=1,2,3… là nghiệm gần đúng của phơng trìnhf(x)=0
Công thức tính xn: Từ phơng trình tiếp tuyến tại (xn-1, f(xn-1) ta
có công thức tính xn là:
Quá trình dừng lại khi nhận đợc nghiệm gần đúng đạt độchính xác yêu cầu
2.3.4.2 Sự hội tụ của ph ơng pháp tiếp tuyến.
Nếu f(x) có f’(x), f’’(x) không đổi dấu trên khoảng phân ly(a, b), nếu chọn x0 sao cho f(x0) cùng dấu với f”(x) thì phơng phápdây cung hội tụ về nghiệm đúng
2.3.4.3 Sai số của nghiệm gần đúng
Trang 36-Để đánh giá độ lệch giữa nghiệm gần đúng xn, nhận đợcbằng phơng pháp tiếp tuyến và nghiệm đúng ta có các côngthức sau:
Trang 37Hình 4 Lu đồ thuật toán tìm nghiệm gần đúng bằng phơng pháp