Mô phỏng cách giải ptb1 và ptb2 trên lưu đồ thuật toán
Trang 1NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Trà Vinh, ngày … tháng …… năm ……
Giáo viên hướng dẫn
Trang 2NHẬN XÉT CỦA THÀNH VIÊN HỘI ĐỒNG
Trà Vinh, ngày … tháng …… năm ……
Thành viên hội đồng
(Ký tên và ghi rõ họ tên)
Trang 3LỜI CẢM ƠN
Trong thời gian qua, quý thầy (cô) Khoa Kỹ thuật và Công nghệ đã tận tình dạybảo cho em những kiến thức bổ ích, giúp em vượt qua những kỳ thi, những khó khăntrong quá trình học tập, cũng như là đã chỉ bảo em trong suốt thời gian làm niên luận
Em xin chân thành cảm ơn quý thầy (cô) Khoa Kỹ thuật và Công nghệ, Trường Đạihọc Trà Vinh Kính chúc quý thầy (cô) dồi dào sức khỏe và thành công trong côngviệc của mình
Em xin chân thành cảm ơn thầy Phạm Minh Đương, giúp em giải quyết nhữngkhó khăn vấp phải khi thực hiện niên luận… Cảm ơn các bạn học đồng hành khi làmniên luận đã trợ giúp em, trao đổi về ngôn ngữ, giải thuật, động viên mình những lúckhó khăn Xin cảm ơn thầy và các bạn thật là nhiều
Dù không tránh khỏi những khiếm khuyết do hạn chế về mặt thời gian cũng nhưmột số kiến thức trong lập trình, nhưng em cũng đã nổ lực hết sức để hoàn thành đềtài Sau gần một tháng thực hiện, bài niên luận của em đã đáp ứng đầy đủ được các yêucầu của đề tài đặt ra Em rất mong nhận được những ý kiến đóng góp hết sức quý báucủa quý thầy (cô) và bè bạn để đề tài ngày càng được hoàn thiện hơn
Em chân thành cảm ơn !
Trang 4MỤC LỤC
TÓM TẮT NIÊN LUẬN 7
1 Vấn đề nghiên cứu 7
2 Hướng tiếp cận 7
3 Cách giải quyết 7
4 Một số kết quả 7
CHƯƠNG 1: TỔNG QUAN 8
1.1 Lý do chọn đề tài 8
1.2 Vấn đề nghiên cứu 8
1.3 Phạm vi nghiên cứu 8
1.4 Cách giải quyết 9
1.5 Mục đích 9
1.6 Cấu trúc niên luận 9
CHƯƠNG 2: NGHIÊN CỨU LÝ THUYẾT 10
2.1 Phương trình bậc nhất ax+b=0 10
2.1.1 Định nghĩa 10
2.1.2 Quy tắc biến đổi phương trình 10
2.1.3 Cách giải phương trình bậc nhất một ẩn 10
2.1.4 Ví dụ: 10
2.2 Phương trình bậc hai ax²+bx+c=0 11
2.2.1 Lịch sử 11
2.2.2 Định nghĩa 12
2.2.3 Cách giải phương trình bậc hai 12
2.2.4 Các trường hợp nhận biết đặc biệt 13
2.2.5 Ví dụ 14
CHƯƠNG 3: ỨNG DỤNG 15
3.1 Lưu đồ thuật toán 15
3.2 Thủ tục 16
Trang 53.2.1 Code giải phương trình bậc 1 trên c#: 17
3.2.2 Code giải phương trình bậc 2 trên c#: 17
3.3 Giới thiệu chương trình 19
3.3.1 Chương trình giải phương trình bậc 1 19
3.3.2 Chương trình giải phương trình bậc 2 22
CHƯƠNG 4: KẾT LUẬN 27
4.1 Kết luận 27
4.1.1 Kết quả đạt được 27
4.1.2 Hạn chế 27
4.2 Hướng phát triển 27
DANH MỤC TÀI LIỆU THAM KHẢO 28
Trang 6DANH MỤC HÌNH ẢNH – BẢNG BIỂU
Hình 1: Lưu đồ giải phương trình bậc nhất 15
Hình 2: Lưu đồ giải phương trình bậc hai 16
Hình 3: Nhập vào 2 số a và b sau đó click vào nút “Tính” 19
Hình 4: Kết quả phép tính trên cho ra x= -2 20
Hình 5: Nhập a=0, b=0 cho kết quả là pt có vô số nghiệm 20
Hình 6: Nhập a=0 và 1 số b 0 kết quả là pt vô nghiệm 21
Hình 7 nhập 3 số a, b, c bất kì ví dụ 1, 2, 3 22
Hình 8: Kết quả của phép tính trên là pt vô nghiệm 23
Hình 9: Với a=2, b=3, c=1 thì pt có 2 nghiệm phân biệt x1 và x2 24
Hình 10: Với a=2, b=4, c=2 thì pt có nghiệm kép x1=x2=-1 25
Hình 11: Nhập a, b, c bất kì nếu a=0 thì pt có dạng ax+b=0 26
Trang 7CHƯƠNG 1 TÓM TẮT NIÊN LUẬN
Trang 8Cùng với nhu cầu cho việc học tập của bảng thân, tính toán và sự phát triểninternet Đó là lý do em chọn đề tài “Mô phỏng cách giải phương trình bậc nhất vàphương trình bậc hai trên lưu đồ thuât toán” nhằm xây dựng một chương trình tínhtoán nhanh và hiệu quả trên máy tính.
Chương trình được viết trên ngôn ngữ C# Vì vậy ta cần nắm vững kiến thức cănbản về lập trình ngôn ngữ C#
7 Phạm vi nghiên cứu
Để có một phần mềm ứng dụng đáp ứng được yêu cầu công việc đặt ra thì nhữngngười làm tin học phải biết phương thức làm việc của chương trình để từ đó xây dựnglên một phần mềm ứng dụng quản lý chương trình đó
Bài toán này giới hạn trên phạm vi của máy tính Nghiên cứu xung quanh vấn đề
mô phỏng cách giải phương trình và ngôn ngữ lập trình căn bản
Đề tài được nghiên cứu chủ yếu từ tài liệu trên internet và một số sách hướng dẫn
về ngôn ngữ lập trình
Trang 98 Cách giải quyết
Sử dụng kiến thức đã học và hướng dẫn của GVHD để tạo ra một ứng dụng mô phỏng cách giải phương trình bậc nhất và phương trình bậc hai trên lưu đồ thuât toán Một khi, người dùng nhập các số a, b, c từ bàn phím và phép “tính” thì chương trình sẽcho một kết quả như mong muốn
Nắm vững những kiến thức về thuật toán và lập trình căn bản
10 Cấu trúc niên luận
Chương 1: Tổng quan Trình bài tổng quan vấn đề nghiên cứu, hiện trạng nghiêncứu
Chương 2: Nghiên cứu lý thuyết Trình bài định nghĩa, nguồn gốc,các cách giảiphương trình, các ví dụ
Chương 3: Đánh giá kết quả Trình bài lưu đồ thuật toán, thủ tục, giới thiệuchương trình
Chương 4: Kết luận và hướng phát triển Trình bài kết quả đạt được, hạn chế và hướng phát triển
Trang 10CHƯƠNG 2: NGHIÊN CỨU LÝ THUYẾT
11 Phương trình bậc nhất ax+b=0
2.11.1 Định nghĩa
Phương trình dạng ax + b = 0, với a và b là hai số đã cho và a 0, được gọi là phươngtrình bậc nhất một ẩn
2.11.2 Quy tắc biến đổi phương trình
- Quy tắc chuyển vế : Trong một phương trình, ta có thể chuyển một hạng tử từ vế nàysang vế kia và đổi dấu hạng tử đó
- Quy tắc nhân với một số : Trong một phương trình, ta có thể nhân (hoặc chia) cả hai
Trang 11lần đầu tiên giới thiệu với người châu Âu lời giải trọn vẹn trong cuốn sách Liber
embadorum của ông.
Shridhara được cho là một trong số các nhà toán học đầu tiên đưa ra quy tắc chung để giải phương trình bậc hai Nhưng ở đây có sự tranh cãi về điều đó Quy tắc như sau (diễn giải bởi Bhaskara II):
Nhân cả hai vế với một đại lượng đã biết bằng 4 lần hệ số của bình phương của ẩn (4a); thêm vào cả hai vế một lượng đã biết bằng bình phương của hệ số của ẩn (b²); sau đó lấy căn bậc hai.
Trang 122.12.2 Định nghĩa
Dạng tổng quát của phương trình bậc hai một ẩn là ax²+bx+c=0trong đó a ≠ 0, các
số a, b và c là các hằng số (thực hoặc phức) được gọi là các hệ số: a là hệ sốcủa x², b là hệ số của x và c là hằng số hay số hạng tự do
2.12.3 Cách giải phương trình bậc hai
Để giải phương trình bậc 2, tức là tìm nghiệm x, ta cần tính delta ( KH: )
- Nếu thì phương trình vô nghiệm
* Công thức thu gọn (Áp dụng nếu b là số chẵn)
Trang 13Sau đó giải phương trình bậc hai, và suy ra nghiệm x.
2.12.4 Các trường hợp nhận biết đặc biệt
Khi phương trình bậc 2 đã cho có dấu hiệu sau:
(với a,b và c là các hệ số của phương trình bậc 2, a khác 0) thì lúc đó nghiệm của phương trình là:
.2)
(với a,b và c là các hệ số của phương trình bậc 2, a khác 0) thì lúc đó nghiệm của phương trình là:
.3) Nếu (tức a và c trái dấu nhau) thì phương trình luôn luôn có 2 nghiệm phânbiệt
Trang 15CHƯƠNG 3: ỨNG DỤNG
13 Lưu đồ thuật toán
Hình 1: Lưu đồ giải phương trình bậc nhất
Trang 16Hình 2: Lưu đồ giải phương trình bậc hai
Trang 18public float delta;
public void Nhap()
Trang 19Console.WriteLine("Phuong trinh co nghiem thu hai"+x2.ToString()); }
15 Giới thiệu chương trình
2.15.1 Chương trình giải phương trình bậc 1
Trang 20Hình 4: Kết quả phép tính trên cho ra x= -2
Tiếp tục nhập các số a, b khác nhau để kiểm tra :
Hình 5: Nhập a=0, b=0 cho kết quả là pt có vô số nghiệm
Trang 21Hình 6: Nhập a=0 và 1 số b 0 kết quả là pt vô nghiệm
Trang 222.15.2 Chương trình giải phương trình bậc 2
Hình 7 nhập 3 số a, b, c bất kì ví dụ 1, 2, 3
Trang 23Hình 8: Kết quả của phép tính trên là pt vô nghiệm
Tiếp tục nhập các số a, b, c khác nhau để kiểm tra :
Trang 24Hình 9: Với a=2, b=3, c=1 thì pt có 2 nghiệm phân biệt x1 và x2
Trang 25Hình 10: Với a=2, b=4, c=2 thì pt có nghiệm kép x1=x2=-1
Trang 26Hình 11: Nhập a, b, c bất kì nếu a=0 thì pt có dạng ax+b=0
Trang 27CHƯƠNG 4: KẾT LUẬN
16 Kết luận
2.16.1 Kết quả đạt được
Hoàn thành đầy đủ yêu cầu của bài toán
Giao diện đơn giản, thân thiện với người dùng
Nắm vững các kiến thức về lập trình để áp dụng giải quyết các mô hình trongthực tế như chương trình này
Chương trình đã giải quyết được về cơ bản những yêu cầu đặt ra Chương trìnhcho phép người dùng nhập dữ liệu từ bàn phím
Quyển báo cáo rõ ràng, font chữ dễ đọc và thân thiện Trình bày chi tiết các giảithuật cài đặt
2.16.2 Hạn chế
Do lần đầu tiên làm niên luận nên còn nhiều sai sót trong phần trình bày cũngnhư về giải thuật
Giao diện còn đơn giản, chưa đẹp
Dù đã rất cố gắng nhưng chắc là vẫn không tránh khỏi những thiếu sót, điều này
đã phụ thuộc rất nhiều vào demo chương trình
17 Hướng phát triển
Phát triển thêm về phần đồ hoạ, giao diện cho đẹp hơn, có thể có thêm hình ảnhsinh động
Tìm ra giải thuật tối ưu hơn
Về bản thân, em sẽ cố gắng phát huy những ưu điểm, khắc phục những khuyếtđiểm của mình Về chương trình, em sẽ cố gắng khắc phục những hạn chế, đặc biệt lànhững hạn chế lớn nhất vừa nêu trên Theo yêu cầu của đề tài tuy đã hoàn thành nhưng
em cố gắng bổ sung thêm một số tiện ích như: hiển thị phần đồ họa có giao diện dễ
Trang 28DANH MỤC TÀI LIỆU THAM KHẢO
1 Giáo trình lý thuyết và bài tập ngôn ngữ C#: Anh Quang, Phan Hoàng, Nhà xuấtbản Văn hóa Thông tin, nhà phát hành Minh Lâm