1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Xây dựng phần mềm hỗ trợ học phương pháp tính

72 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

TRƯỜNG ĐẠI HỌC HÙNG VƯƠNG KHOA KỸ THUẬT – CÔNG NGHỆ - TRẦN THỊ THANH HƯỜNG XÂY DỰNG PHẦN MỀM HỖ TRỢ HỌC PHƯƠNG PHÁP TÍNH KHĨA LUẬN TỐT NGHIỆP ĐẠI HỌC Ngành: Công nghệ Thông tin Phú Thọ, 2017 TRƯỜNG ĐẠI HỌC HÙNG VƯƠNG KHOA KỸ THUẬT – CÔNG NGHỆ TRẦN THỊ THANH HƯỜNG XÂY DỰNG PHẦN MỀM HỖ TRỢ HỌC PHƯƠNG PHÁP TÍNH KHĨA LUẬN TỐT NGHIỆP ĐẠI HỌC Ngành: Công nghệ Thông tin NGƯỜI HƯỚNG DẪN: ThS Nguyễn Thị Hảo Phú Thọ, 2017 i LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành tới giảng viên khoa Kỹ thuật – Công nghệ trường Đại học Hùng Vương tạo điều kiện thuận lợi để em hồn thành tốt khóa luận tốt nghiệp: “Xây dựng phần mềm hỗ trợ học Phương pháp tính” Đặc biệt cô giáo ThS Nguyễn Thị Hảo giành nhiều thời gian quý báu, tận tình hướng dẫn em suốt q trình thực khóa luận, dạy cho em tư lập trình, cách nhìn nhận vấn đề cách tổng quát đồng thời rèn luyện tác phong làm việc khoa học Mặc dù cố gắng song khóa luận em khơng tránh khỏi thiếu sót cịn hạn chế trình độ, thời gian nghiên cứu Vì vậy, em mong nhận góp ý thầy giáo, giáo bạn để khóa luận em hoàn thiện Em xin chân thành cảm ơn! Phú Thọ, tháng 05 năm 2017 Sinh viên Trần Thị Thanh Hường ĐẠI HỌC HÙNG VƯƠNG ii MỤC LỤC A MỞ ĐẦU 1 Đặt vấn đề nghiên cứu 1.1 Sự cần thiết phải nghiên cứu 1.2 Căn khoa học thực tiễn Mục tiêu nghiên cứu đề tài 2.1 Mục tiêu chung 2.2 Mục tiêu cụ thể Đối tượng phạm vi nghiên cứu 3.1 Đối tượng nghiên cứu 3.2 Phạm vi nghiên cứu Phương pháp nghiên cứu B NỘI DUNG, KẾT QUẢ NGHIÊN CỨU CHƯƠNG 1: TỔNG QUAN VẤN ĐỀ NGHIÊN CỨU 1.1 Cơ sở lý luận 1.1.1 Một số khái niệm khoa học 1.1.2 Nội dung vấn đề nghiên cứu 1.1.3 Đặc điểm vấn đề nghiên cứu 1.1.4.Vai trò ý nghĩa vấn đề nghiên cứu 1.2 Cơ sở thực tiễn 1.2.1 Trên giới 1.2.2 Ở Việt nam 1.3 Tổng quan học phần phương pháp tính 10 1.3.1 Sai số 10 1.3.2 Tính gần nghiệm thực phương trình 13 1.3.3 Phương pháp tìm nghiệm hệ phương trình 14 1.3.4 Nội suy phương pháp bình phương bé 14 1.3.5 Tính gần đạo hàm tích phân xác định 16 1.4 Tổng quan ngơn ngữ lập trình C# cơng cụ lập trình 19 1.4.1 Giới thiệu ngông ngữ lập trình C# 19 1.4.2 Giới thiệu cơng cụ lập trình Visual Studio 20 ĐẠI HỌC HÙNG VƯƠNG iii 1.4.3 Giới thiệu cơng cụ hỗ trợ lập trình DevExpress 21 CHƯƠNG 2: MỘT SỐ PHƯƠNG PHÁP TÌM NGHIỆM GẦN ĐÚNG CỦA PHƯƠNG TRÌNH VÀ HỆ PHƯƠNG TRÌNH 23 2.1 Một số phương pháp tìm nghiệm gần phương trình 23 2.1.1 Phương pháp chia đôi 23 2.1.2 Phương pháp lặp 26 2.1.3 Phương pháp tiếp tuyến (NewTon) 29 2.1.4 Phương pháp dây cung 32 2.2 Một số phương pháp tìm nghiệm gần hệ phương trình đại số tuyến tính 34 2.2.1 Phương pháp Gauss (Gaoxơ) 35 2.2.2 Phương pháp lặp đơn 37 CHƯƠNG 3: THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM HỖ TRỢ HỌC PHƯƠNG PHÁP TÍNH 40 3.1 Tìm nghiệm gần phương trình 41 3.1.1 Form tìm nghiệm gần theo phương pháp chia đôi 42 3.1.2 Form phương pháp lặp 44 3.1.3 Form tìm nghiệm gần theo phương pháp NewTon 45 3.1.4 Form tìm nghiệm gần theo phương pháp dây cung 46 3.2 Tìm nghiệm gần hệ phương trình 47 3.2.1 Form tìm nghiệm gần theo phương pháp Gauss 47 3.2.2 Form tìm nghiệm gần theo phương pháp lặp đơn 48 3.3 Form lý thuyết 50 3.4 Kết thử nghiệm 51 3.4.1 Phương pháp tìm nghiệm gần phương trình 51 3.4.2 Phương pháp tìm nghiệm gần hệ phương trình 54 C KẾT LUẬN CHUNG 57 Kết đạt 57 Hướng phát triển đề tài 57 D TÀI LIỆU THAM KHẢO 58 E PHỤ LỤC ĐẠI HỌC HÙNG VƯƠNG iv DANH MỤC CÁC BẢNG Bảng 2.1 Bảng kết tìm nghiệm theo phương pháp chia đôi 24 Bảng 2.2 Bảng kết tìm nghiệm theo phương pháp NewTon 31 Bảng 2.3 Bảng kết tìm nghiệm theo phương pháp dây cung 33 Bảng 3.1 Kết thực nghiệm phương pháp chia đôi 52 Bảng 3.2 Kết tìm nghiệm phương pháp NewTon 53 Bảng 3.3 Kết tìm nghiệm phương pháp dây cung 53 Bảng 3.4 Bảng kết thực nghiệm tìm nghiệm hệ phương trình 55 ĐẠI HỌC HÙNG VƯƠNG v DANH MỤC HÌNH ẢNH Hình 1.1 Đồ thị hàm số y = f(x) Hình 1.2 Đồ thị hàm số y1 = f(x), y2 = g(x) Hình 1.4 Xét tính liên tục hàm số y = f(x) xét [a, b] Hình 2.1 Đồ thị hàm số y1 = 2x, y2 = – x 24 Hình 2.2 Lưu đồ phương pháp chia đôi 26 Hình 2.3 Lưu đồ phương pháp NewTon 31 Hình 2.4 Đồ thị biểu diễn phương pháp dây cung 32 Hình 2.5 Lưu đồ phương pháp dây cung 34 Hình 3.1 Giao diện form 40 Hình 3.2 Quy trình chung chương trình máy tính 40 Hình 3.3 Sơ đồ phân cấp chức phần mềm 41 Hình 3.4 Form phương pháp chia đơi biết trước lần lặp n 43 Hình 3.5 Giao diện form phương pháp chia đơi biết trước 𝜺 43 Hình 3.6 Form mơ tả phương pháp lặp 44 Hình 3.7 Form sơ đồ khối phương pháp lặp 45 Hình 3.8 Giao diện form phương pháp NewTon 46 Hình 3.9 Giao diện form phương pháp dây cung 47 Hình 3.10 Giao diện form phương pháp Gauss 48 Hình 3.11 Giao diện form phương pháp lặp đơn 50 Hình 3.12 Cách chọn giao diện đề cương in file PDF 51 Hình 3.13 Cách chọn giao diện đề cương hiển thị phần mềm 51 ĐẠI HỌC HÙNG VƯƠNG A MỞ ĐẦU Đặt vấn đề nghiên cứu 1.1 Sự cần thiết phải nghiên cứu Học phần Phương pháp tính giảng dạy trường Đại học Hùng Vương, có nhiều tập, nhiều cơng thức phải ghi nhớ nên sinh viên gặp nhiều khó khăn học tập Do cần có cơng cụ hiệu giúp đỡ người học môn Phương pháp tính việc cần thiết Trong lĩnh vực giáo dục, đào tạo xuất nhiều phần mềm hỗ trợ cho hoạt động giảng dạy học tập đem lại hiệu cao, có phần mềm hỗ trợ việc học tập giảng dạy môn học anh văn, toán học, xây dựng[6] Tuy nhiên phần mềm hỗ trợ cho việc học tập giảng dạy học phần Phương pháp tính trường Đại học Hùng Vương chưa có Vì vậy, em định xây dựng phần mềm hỗ trợ học Phương pháp tính giúp cho người học đồng thời rèn luyện cơng thức tính tốn, cách trình bày logic phần tập ví dụ rèn luyện kỹ giải tốn thơng thường, kiểm tra kết nhanh xác 1.2 Căn khoa học thực tiễn Ở mơn học, tốn, ví dụ có sẵn giáo trình, tài liệu tham khảo nói chung chọn lọc, xếp trình bày có hệ thống, phù hợp với kiến thức tư người học, phản ánh nội dung thực tiễn học tập Tuy nhiên, để giải toán theo môn học, cụ thể học phần Phương pháp tính, học phần có nhiều phương pháp tính tốn phức tạp, đơi có kết nhỏ Để vận dụng tốt kiến thức môn học ta cần kết hợp ví dụ minh họa hỗ trợ máy tính tốn cụ thể, điển hình kiểm nghiệm kết cách xác, nhanh gọn Trên thực tế dừng lại việc sử dụng ví dụ có sẵn giáo trình tài liệu hay loại sách tham khảo việc học đơi khơng đạt hiệu cao Những học minh họa thêm ví dụ, tập mới, thủ thuật hay toán giải nhiều cách khác nhau, giúp cho ĐẠI HỌC HÙNG VƯƠNG người học dễ dàng so sánh hiểu tốn cách tồn diện Từ tạo hứng thú cho người học, góp phần nâng cao chất lượng học Trong tốn học, cụ thể mơn học Phương pháp tính tốn tìm nghiệm gần phương trình hệ phương trình đại số tuyến tính, muốn tìm nghiệm gần với sai số nhỏ tùy ý, người ta xây dựng công thức thực phép toán Khi giải toán ta phải tính tốn nhiều lần nghiệm thỏa mãn sai số cho thời gian Để giảm bớt việc tính tốn sử dụng máy tính cá nhân nhiều bước, ta dựa vào cơng thức có dùng thuật tốn để mơ tả cơng thức phương pháp tính dùng phương pháp lập trình máy tính để xây dựng phần mềm tìm nghiệm gần phương trình hệ phương trình tuyến tính với sai số theo ý muốn Sử dụng phần mềm này, kết hợp với tốn, ví dụ cụ thể để minh họa phương pháp tính, giúp việc học mơn học hiệu sinh động Vì lý trên, mục đích góp phần nâng cao tinh thần học tập sinh viên, em định chọn đề tài: “ Xây dựng phần mềm hỗ trợ học Phương pháp tính” Mục tiêu nghiên cứu đề tài 2.1 Mục tiêu chung Xây dựng phần mềm hỗ trợ học học phần Phương pháp tính chạy ổn định, hiệu cho sinh viên trường Đại học Hùng Vương 2.2 Mục tiêu cụ thể Xây dựng phần mềm hỗ trợ học Phương pháp tính với chức sau: tìm nghiệm gần cho phương trình hệ phương trình đại số tuyến tính, cung cấp đề cương giảng, đề cương câu hỏi, tập ôn tập cuối chương giải số tập điển hình Đối tượng phạm vi nghiên cứu 3.1 Đối tượng nghiên cứu Đối tượng nghiên cứu: Nội dung học phần Phương pháp tính sâu tìm hiểu phương pháp tìm nghiệm ĐẠI HỌC HÙNG VƯƠNG 3.2 Phạm vi nghiên cứu  Về nội dung: Tìm hiểu nghiên cứu nội dung học phần môn Phương pháp tính giảng dạy lớp Đại học Công nghệ thông tin, Cao đẳng Công nghệ thông tin, Đại học sư phạm Toán, Đại học sư phạm Vật lí trường Đại học Hùng Vương  Về không gian: Trường Đại học Hùng Vương  Về thời gian: 10/2016 – 04/2017 Phương pháp nghiên cứu  Phương pháp nghiên cứu lý luận: Tổng hợp tài liệu, nghiên cứu có liên quan đến học phần Phương pháp tính nói chung cơng thức, giải thuật tìm nghiệm gần phương trình hệ phương trình đại số tuyến tính nói riêng; ngơn ngữ lập trình C# tham khảo phần mềm hỗ trợ học tập cho mơn học có  Phương pháp thực nghiệm: Sử dụng công cụ Visual Studio 2012 với thư viện toán học System.Math, DevExpress phiên 12.1 để xây dựng phần mềm ĐẠI HỌC HÙNG VƯƠNG 51 Hình 3.12 Cách chọn giao diện đề cương in file PDF Hình 3.13 Cách chọn giao diện đề cương hiển thị phần mềm 3.4 Kết thử nghiệm 3.4.1 Phương pháp tìm nghiệm gần phương trình Tìm nghiệm gần ví dụ đây: ĐẠI HỌC HÙNG VƯƠNG 52 Ví dụ 1: x3 – x - = 0, với khoảng phân li nghiệm [1, 2] hai trường hợp: tính đến x5 sai số 𝜺 = 0,001 Ví dụ 2: x3 + x – = 0, với khoảng phân li nghiệm [1, 2] hai trường hợp: tính đến x5 sai số 𝜺 = 0,001 Ví dụ 3: x4 – 3.x +1 = 0, với khoảng phân li nghiệm [1, 2] hai trường hợp: tính đến x4 sai số 𝜺 = 0,001 Ví dụ 4: 5x3 - 19x + 3= 0, với khoảng phân li nghiệm [-3, -2] hai trường hợp: tính đến x5 sai số 𝜺 = 0,001 Ví dụ 5: x3 + x – 1000 = 0,với khoảng phân li nghiệm [9, 10] hai trường hợp: tính đến x4 sai số 𝜺 = 0,001 Sử dụng chương trình tìm nghiệm gần phương trình phần mềm hỗ trợ học Phương pháp tính để giải phương trình trên, ta thu kết bảng bên dưới: Bảng 3.1 Kết thực nghiệm phương pháp chia đơi Ví dụ Điều kiện lần lặp n x5 = 1,3125 x5 = 1,33475 Ví dụ Sai số: 0,03125 Ví dụ Ví dụ Ví dụ Ví dụ Điều kiện sai số 𝜺 x5=1,3251 x5 = 1,32422 Sai số: 0,0009765 x5=1,5 x5 = 1,53125 x5= 1,5166 x5 = 1,515625 Sai số: 0,03125 Sai số: 6*10-5 x4 = 1,25 x4= 1,3125 x4= 1,30762 x5 = 1,30664 Sai số: 0,0625 Sai số: 0,0009765625 x5 = -2.03125 x6= -2 x6= -2.02441 x5 = -2,02344 Sai số: 0,03125 Sai số: 0,0009765625 x4= 9,9375 x4= 10 x4= 9,96582 x4 = 9,96679 Sai số: 0,0625 Sai số: 0,0009765625 ĐẠI HỌC HÙNG VƯƠNG 53 Bảng 3.2 Kết tìm nghiệm phương pháp NewTon Ví dụ Ví dụ Ví dụ Ví dụ Ví dụ Ví dụ Điều kiện lần lặp n Điều kiện sai số 𝜺 x5 = 1,324719049 x5= 1,324717957 Sai số: 0,00042 Sai số: 0,00042 x5 = 1,515980228 x5= 1,515980228 Sai số: 10-5 Sai số: 10-5 x4 = 1,307772427 x4 =1,307486101 Sai số: 6*10-5 Sai số: 6*10-5 x5 = -2,023968217 x6 = -2,023968217 Sai số: 0.0008 Sai số: 0.0008 x4 = 9,966666791 x4 = 9.966666791 Sai số: 0,00011 Sai số: 0,00011 Bảng 3.3 Kết tìm nghiệm phương pháp dây cung Ví dụ Ví dụ Ví dụ Ví dụ Ví dụ Ví dụ Điều kiện lần lặp n Điều kiện sai số 𝜺 x5 = 1,319 x5= 1,324 Sai số: 0,00221 Sai số: 0,0004 x5 = 1,516 x5 = 1,516 Sai số: 0,00028 Sai số: 0,00028 x4 = 1,262 x4= 1,303 Sai số: 0,00857 Sai số: 0,00094 x6 = -2,024 x6 = -2,024 Sai số: 0,00016 Sai số: 0,00016 x4= 9,967 x4= 9,967 Sai số: 10-5 Sai số: 10-5 ĐẠI HỌC HÙNG VƯƠNG 54 Qua trình thử nghiệm phần mềm, em xin đưa giá số nhận xét, đánh sau: - Cùng ví dụ nhiên hai phương pháp đưa sai số, nghiệm gần khác - Phương pháp NewTon đưa sai số nhỏ hơn, nên phương pháp hội tụ đến nghiệm nhanh - Tìm nghiệm sai số theo n hay 𝜺 kết xác nhiên số lần thực tính tốn thể chi tiết DataGridview 3.4.2 Phương pháp tìm nghiệm gần hệ phương trình Giải hệ phương trình tuyến tính ví dụ theo hai phương pháp: Gauss lặp đơn (với 𝜺 n cho trước) Ví dụ 1: x1 - x2 - x3 = - x1 + 6x2 – x3 = ; 𝜺 = 0,444 ; n = -x1 – 3x2 + 9x3 = Ví dụ 2: 3x1 - x2 + x3 = 15 x1 + 6x2 + 2x3 = 0,36 ; 𝜺 =10-5 , n = 14 x1 + x2 + 7x3 = 14 Ví dụ 3: 5x1 - x2 - x3 = 25 -x1 + 4x2 + x3 = 6; 𝜺 =10-5 , n = 14 2x1 + x2 + 10x3 = Ví dụ 4: Giải hệ phương trình tuyến tính: 4x1 + x2 - x3 = x1 + 3x2 + x3 = ; 𝜺 =10-5 , n = 10 x1 – x2 + 12x3 = Ví dụ 5: Giải hệ phương trình tuyến tính: 4x1 + x2 - x3 = x1 - 3x2 + x3 = ; 𝜺 =10-5 , n = 11 x1 – x2 - 12x3 = ĐẠI HỌC HÙNG VƯƠNG 55 Sử dụng chương trình tìm nghiệm gần hệ phương trình đại số tuyến tính phần mềm hỗ trợ học Phương pháp tính để giải hệ phương trình trên, ta tìm nghiệm gần sai số (đối với phương pháp lặp) Và bảng đánh giá kết thực nghiệm phần mềm: Bảng 3.4 Bảng kết thực nghiệm tìm nghiệm hệ phương trình Ví dụ Ví dụ Phương pháp Gauss Phương pháp lặp đơn x1 = x16=0,99996576 x2 = x26=0,99998412 x3 = x36=0,99999090 sai số: 0,2975 Ví dụ x1 = 3,923636363636 x114= 3,9266362 x2 = -1,25272727272 x214= -1,2527272 x3 = 1,976363636363 x314= 1,97636363 Sai số: 14*10-6 Ví dụ x1 = 5,5224719101 x114= 5,52247190 x2 = 3,6853932584 x214= 3,68539325 x3 = -1,073033707 x314= -1,0730337 Sai số: 5*10-6 Ví dụ x1 = 0,1418439716 x110= 0,14184397 x2 = 1,8226950354 x210= 1,82269503 x3 = 0,3900709219 x310= 0,39007092 Sai số: 10-5 Ví dụ x1 = 0,9182389937 x111= 0,91823899 x2 = -1,704402515 x211= -1,7044025 x3 = -0,031446540 x311= -0,0314465 Sai số: 18*10-6 ĐẠI HỌC HÙNG VƯƠNG 56 Qua trình thử nghiệm phần mềm, em xin đưa số nhận xét, đánh sau: - Phương pháp Gauss khơng có sai số cho nghiệm Còn phương pháp lặp đơn đưa sai số cho nghiệm gần - Thời gian tìm nghiệm phương pháp lặp đơn nhanh phương pháp Gauss, số lượng phép tính phương pháp Gauss tăng nhanh số lượng ẩn tăng lên ĐẠI HỌC HÙNG VƯƠNG 57 C KẾT LUẬN CHUNG Kết đạt Xây dựng thành cơng phần mềm hỗ trợ học Phương pháp tính chạy ổn định, hiệu Phần mềm gồm chức sau: - Tìm nghiệm gần phương trình hệ phương trình đại số tuyến tính - Tích hợp đề cương giảng, câu hỏi ơn tập tập cuối chương - Ngồi cung cấp số tập ví dụ minh họa cho người dùng tham khảo Phần mềm tìm hỗ trợ học Phương pháp tính có ưu điểm sau:  Phần mềm chạy ổn định, hiệu  Sau xây dựng phần mềm đưa vào thực nghiệm, em có đưa đánh giá để so sánh kết phương pháp  Phần tập ví dụ minh họa cụ thể, trình bày logic giúp sinh viên đồng rèn luyện kỹ giải tốn thơng thường rèn luyện khả tự học  Phần mềm không cần mật khẩu, tài khoản để tất người học sử dụng Phần mềm hoạt động không cần kết nối Internet  Phần mềm xây dựng tiêu chí tải phần mềm máy tính khơng phí thời gian sử dụng phần mềm không giớ hạn  Giao diện suốt, thân thiện với người dùng Phần mềm hỗ trợ học Phương pháp tính cịn tồn hạn chế sau:  Chưa xây dựng hết phương pháp tìm nghiệm  Phần mềm chưa hỗ trợ sử dụng trực tuyến Hướng phát triển đề tài  Khắc phục nhược điểm tồn tại, đưa phần mềm vào thực nghiệm  Tiếp tục hoàn thiện mở rộng phạm vi tìm nghiệm gần cho nhiều phương pháp tính  Tiếp tục nghiên cứu, triển khai chức cho chương trình ĐẠI HỌC HÙNG VƯƠNG 58 D TÀI LIỆU THAM KHẢO Sách tham khảo: [1] Đỗ Thị Tuyết Hoa (2010), Phương pháp tính, Đại học Đà Nẵng [2] Lê Hữu Đạt (Chủ biên) (2006), “Lập trình Windows”.,NXB Lao động xã hội [3] Phạm Hữu Khang, Đồn Thiện Ngân (2005), “C# - Lập trình FORM WINDOWS (Tập 2)”, NXB lao động xã hội [4] Tạ Văn Đĩnh (Chủ biên) (2008), Phương pháp tính, NXB Giáo dục Website: [5] Nguyễn Thế Công (2015) Giới thiệu mơn học tính tốn phần mềm hỗ trợ tính tốn, , xem 05/10/2016 [6] Võ Đại Lượng (2011) Phần mềm SCA - Hỗ trợ tính tốn tốn học, https://download.com.vn/phan-mem-sca/download [7] https://vi.wikipedia.org/wiki/Ph%C6%B0%C6%A1ng_tr%C3%ACnh [8].https://vi.wikipedia.org/wiki/H%E1%BB%87_ph%C6%B0%C6%A1ng_t r %C3%ACnh_tuy%E1%BA%BFn_t%C3%Adnh [9] https://vi.wikipedia.org/wiki/Microsoft_Visual_Studio [10] https://www.devexpress.com/Support/ ĐẠI HỌC HÙNG VƯƠNG E PHỤ LỤC Phụ lục A: Mã code C# tìm nghiệm theo phương pháp chia đôi private double[] a = new double[16]; private double[] b = new double[16]; private double[] c = new double[16]; private double[] fc = new double[16]; private double[] eps = new double[16]; private double[] eps1 = new double[16]; double an, bn, lanlap, epsilon; private void TTlanchiaN() { int i = 0; an = Convert.ToDouble(canduoiA.Text); bn = Convert.ToDouble(cantrenb.Text); if (tinhF(an) * tinhF(bn) < 0) { lanlap = Convert.ToDouble(calcEdit_n.Text); a[0] = an; b[0] = bn; { c[i] = (a[i] + b[i]) / 2; if (tinhF(c[i]) == 0) txtketqua.Text = c[i] + "là nghiệm phương trình"; else if (tinhF(a[i]) * tinhF(c[i]) < 0) { b[i + 1] = c[i]; a[i + 1] = a[i]; c[i + 1] = c[i]; eps[i + 1] = (c[i] - a[i]); txtketqua.Text = " Nghiệm phương trình là: x= " + c[i] + " sai số với lần lặp n = " + lanlap + " là: " + eps[i + 1].ToString(); } else { a[i + 1] = c[i]; b[i + 1] = b[i]; c[i + 1] = c[i]; eps[i + 1] = b[i] - c[i]; txtketqua.Text = " Nghiệm phương trình là: x= " + c[i] + " sai số với lần lặp n = " + lanlap + " là: " + eps[i + 1].ToString(); } i = i + 1; } while (i < lanlap); } else txtketqua.Text = "[" + an + "," + bn + "]" + " Không phai khoảng phân li cuả phương trình"; } private void TTEpsilon() { an = Convert.ToDouble(canduoiA.Text); bn = Convert.ToDouble(cantrenb.Text); if (tinhF(an) * tinhF(bn) < 0) { epsilon = Convert.ToDouble(saiso.Text); a[0] = an; b[0] = bn; ĐẠI HỌC HÙNG VƯƠNG int i = 0; while ((b[i] - a[i]) > epsilon) { c[i] = (a[i] + b[i]) / 2; if (tinhF(c[i]) == 0) txtketqua.Text = c[i] + "là nghiệm phương trình"; else if (tinhF(a[i]) * tinhF(c[i]) < 0) { b[i + 1] = c[i]; a[i + 1] = a[i]; c[i + 1] = c[i]; eps1[i + 1] = (c[i] - a[i]); txtketqua.Text = " Nghiệm phương trình x= " + c[i] + " sai số với lần lặp n = " + lanlap + " là: " + eps1[i + 1].ToString(); } else { a[i + 1] = c[i]; b[i + 1] = b[i]; c[i + 1] = c[i]; eps1[i + 1] = (c[i] - a[i]); txtketqua.Text = " Nghiệm phương trình x= " + c[i] + " sai số với lần lặp n = " + lanlap + " là: " + eps1[i + 1].ToString(); } i = i + 1; } } else { txtketqua.Text = "[" + an + "," + bn + "]" + " Khơng phải khoảng phân li cuả phương trình"; } } Phụ lục B: Mã code C# tìm nghiệm theo phương pháp NewTon private double[] x0 = new double[16]; private double[] x1 = new double[16]; private double[] a = new double[16]; private double[] b = new double[16]; private double[] fx = new double[16]; private double[] eps = new double[16]; private double[] eps1 = new double[16]; private double[] x00 = new double[16];//mảng dùng để làm tron giá trị x1[] double an, bn,m, lanlap, epsilon;//,x0,x1;// lanlap=lần lặp private void thuattoan() { an = Convert.ToDouble(canduoiA.Text); bn = Convert.ToDouble(cantrenb.Text); int i = 0; double m; if (Math.Abs(DaoHamCap1F(an)) < Math.Abs(DaoHamCap1F(bn))) // m trụy tuyệt đối đạo hàm cấp I a b m = Math.Abs(DaoHamCap1F(bn)); else m = Math.Abs(DaoHamCap1F(an)); if (tinhF(an)*tinhF(bn) 0) && (DaoHamCap1F(an) * DaoHamCap1F(bn) > 0) && (DaoHamCap2F(an) * DaoHamCap2F(bn) > 0))// điều kiện chọn x0=a ĐẠI HỌC HÙNG VƯƠNG { x1[0] = an; i = 1; { x1[i] = x1[i-1] - tinhF(x1[i-1]) / DaoHamCap1F(x1[i-1]); x1[i-1] = x1[i]; fx[i-1] = tinhF(x1[i-1]); eps[i-1] = Math.Round(Math.Abs(fx[i-1]) / m, 5); i++; } while (i 0) && (DaoHamCap1F(an) * DaoHamCap1F(bn) > 0) && (DaoHamCap2F(an) * DaoHamCap2F(bn) > 0)) // điều kiện chọn xo=bn { x1[0] = bn; i = 1; { x1[i] = x1[i - 1] - tinhF(x1[i - 1]) / DaoHamCap1F(x1[i - 1]); x1[i - 1] = x1[i]; fx[i - 1] = tinhF(x1[i - 1]); eps[i - 1] = Math.Round(Math.Abs(fx[i - 1]) / m, 5); i++; } while (i

Ngày đăng: 29/06/2022, 20:36

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Đồ thị hàm số y= f(x) - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 1.1. Đồ thị hàm số y= f(x) (Trang 12)
Hình 1.2. Đồ thị hàm số y 1= f(x), y2 = g(x). - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 1.2. Đồ thị hàm số y 1= f(x), y2 = g(x) (Trang 13)
Minh hoạ bằng hình 1.3 (xét đồ thị trong khoảng [a,b ]) - Xây dựng phần mềm hỗ trợ học phương pháp tính
inh hoạ bằng hình 1.3 (xét đồ thị trong khoảng [a,b ]) (Trang 13)
Ví dụ: Tính saisố tuyệt đối và saisố tương đối của thể tích hình cầu - Xây dựng phần mềm hỗ trợ học phương pháp tính
d ụ: Tính saisố tuyệt đối và saisố tương đối của thể tích hình cầu (Trang 19)
Bảng 2.1. Bảng kết quả tìm nghiệm theo phương pháp chia đôi. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Bảng 2.1. Bảng kết quả tìm nghiệm theo phương pháp chia đôi (Trang 31)
Hình 2.1. Đồ thị hàm số y1 =2 x,y 4– x.    y  - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 2.1. Đồ thị hàm số y1 =2 x,y 4– x. y (Trang 31)
Hình 2.2. Lưu đồ phương pháp chia đôi. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 2.2. Lưu đồ phương pháp chia đôi (Trang 33)
Hình 2.3. Lưu đồ phương pháp NewTon. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 2.3. Lưu đồ phương pháp NewTon (Trang 38)
Bảng 2.2. Bảng kết quả tìm nghiệm theo phương pháp NewTon. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Bảng 2.2. Bảng kết quả tìm nghiệm theo phương pháp NewTon (Trang 38)
Hình 2.4. Đồ thị biểu diễn phương pháp dây cung. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 2.4. Đồ thị biểu diễn phương pháp dây cung (Trang 39)
Bảng 2.3. Bảng kết quả tìm nghiệm theo phương pháp dây cung. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Bảng 2.3. Bảng kết quả tìm nghiệm theo phương pháp dây cung (Trang 40)
ĐẠI HỌC HÙNG VƯƠNG - Xây dựng phần mềm hỗ trợ học phương pháp tính
ĐẠI HỌC HÙNG VƯƠNG (Trang 41)
Hình 2.5. Lưu đồ phương pháp dây cung. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 2.5. Lưu đồ phương pháp dây cung (Trang 41)
Bảng 2.4. Bảng kết quả tìm nghiệm theo phương pháp lặp đơn. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Bảng 2.4. Bảng kết quả tìm nghiệm theo phương pháp lặp đơn (Trang 45)
Hình 3.1. Giao diện form chính. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.1. Giao diện form chính (Trang 47)
Hình 3.3. Sơ đồ phân cấp chức năng của phần mềm. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.3. Sơ đồ phân cấp chức năng của phần mềm (Trang 48)
Hình 3.5. Giao diện form phương pháp chia đôi biết trước  - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.5. Giao diện form phương pháp chia đôi biết trước (Trang 50)
Hình 3.4. Form phương pháp chia đôi biết trước lần lặp n. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.4. Form phương pháp chia đôi biết trước lần lặp n (Trang 50)
Hình 3.6. Form mô tả phương pháp lặp. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.6. Form mô tả phương pháp lặp (Trang 51)
Hình 3.7. Form sơ đồ khối phương pháp lặp. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.7. Form sơ đồ khối phương pháp lặp (Trang 52)
Hình 3.8. Giao diện form phương pháp NewTon. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.8. Giao diện form phương pháp NewTon (Trang 53)
Hình 3.9. Giao diện form phương pháp dây cung. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.9. Giao diện form phương pháp dây cung (Trang 54)
Hình 3.10. Giao diện form phương pháp Gauss. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.10. Giao diện form phương pháp Gauss (Trang 55)
Hình 3.11. Giao diện form phương pháp lặp đơn. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.11. Giao diện form phương pháp lặp đơn (Trang 57)
Hình 3.13. Cách chọn giao diện đề cương hiển thị trên phần mềm. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.13. Cách chọn giao diện đề cương hiển thị trên phần mềm (Trang 58)
Hình 3.12. Cách chọn giao diện đề cương in ra file PDF. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Hình 3.12. Cách chọn giao diện đề cương in ra file PDF (Trang 58)
Bảng 3.1. Kết quả thực nghiệm của phương pháp chia đôi. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Bảng 3.1. Kết quả thực nghiệm của phương pháp chia đôi (Trang 59)
Bảng 3.2. Kết quả tìm nghiệm của phương pháp NewTon. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Bảng 3.2. Kết quả tìm nghiệm của phương pháp NewTon (Trang 60)
Bảng 3.3. Kết quả tìm nghiệm của phương pháp dây cung. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Bảng 3.3. Kết quả tìm nghiệm của phương pháp dây cung (Trang 60)
Bảng 3.4. Bảng kết quả thực nghiệm tìm nghiệm của hệ phương trình. - Xây dựng phần mềm hỗ trợ học phương pháp tính
Bảng 3.4. Bảng kết quả thực nghiệm tìm nghiệm của hệ phương trình (Trang 62)

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w