Ngoài ra, trong Dự án còn sử dụng một số nhận xét, đánh giá cũng như số liệu của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn và chú thích nguồn gốc.. TÓM TẮTQua bài tiểu luận
Trang 1TRƯƠNG CÔNG BẮC – 523H0004
BÁO CÁO GIỮA KỲ
GIẢI TÍCH ỨNG DỤNG
CHO CÔNG NGHỆ THÔNG TIN
THÀNH PHỐ HỒ CHÍ MINH, NĂM 2023
Trang 2TRƯƠNG CÔNG BẮC – 523H0004
BÁO CÁO GIỮA KỲ
GIẢI TÍCH ỨNG DỤNG
CHO CÔNG NGHỆ THÔNG TIN
Người hướng dẫn
ThS Nguyễn Văn Khoa
THÀNH PHỐ HỒ CHÍ MINH, NĂM 2023
Trang 3LỜI CẢM ƠN
Em xin chân thành cảm ơn Trường Đại học Tôn Đức Thắng, Khoa Công Nghệ Thông Tin, bộ môn Kỹ Thuật Phần Mềm và thầy Nguyễn Văn Khoa đã giúp
em hoàn thành bài tiểu luận này
TP Hồ Chí Minh, ngày 19 tháng 12 năm 2023
Tác giả (Ký tên và ghi rõ họ tên) Trương Công Bắc
Trang 4CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi và được sự hướng dẫn khoa học của ThS Nguyễn Văn Khoa Các nội dung nghiên cứu, kết quả trong đề tài này là trung thực và chưa công bố dưới bất kỳ hình thức nào trước đây Những số liệu trong các bảng biểu phục vụ cho việc phân tích, nhận xét, đánh giá được chính tác giả thu thập từ các nguồn khác nhau có ghi rõ trong phần tài liệu tham khảo
Ngoài ra, trong Dự án còn sử dụng một số nhận xét, đánh giá cũng như
số liệu của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn và chú thích nguồn gốc
Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm về nội dung Dự án của mình Trường Đại học Tôn Đức Thắng không
liên quan đến những vi phạm tác quyền, bản quyền do tôi gây ra trong quá trình thực hiện (nếu có)
TP Hồ Chí Minh, ngày 19 tháng 12 năm 2023
Tác giả (Ký tên và ghi rõ họ tên) Trương Công Bắc
Trang 5TÓM TẮT
Qua bài tiểu luận này, em nắm được các tính năng cơ bản của Python bằng các phép tính và một vài thuật toán thông dụng:
Biết sử dụng các hàm trong thư viện numpy, sympy để tính đạo hàm, thế các giá trị vào hàm số đã được dựng
Sử dụng thư viện mathplotlib để dựng hình, vẽ biểu đồ, đồ thị, …
Trang 6MỤC LỤC
DANH MỤC HÌNH VẼ 3
CHƯƠNG 1 PHƯƠNG PHÁP GIẢI BÀI TẬP 4
1.1 Yêu cầu 1a 4
1.2 Yêu cầu 1b 4
1.3 Yêu cầu 1c 5
CHƯƠNG 2 MÃ NGUỒN VÀ ĐẦU RA 7
2.1 Yêu cầu 1a 7
2.1.1 Mã nguồn 7
2.1.2 Đầu ra 7
2.2 Yêu cầu 1b 8
2.2.1 Mã Nguồn 8
2.2.2 Đầu ra 9
2.3 Yêu cầu 1c 10
2.3.1 Mã nguồn 10
2.3.2 Đầu ra 12
TÀI LIỆU THAM KHẢO Error! Bookmark not defined.
Trang 7DANH MỤC HÌNH VẼ
Hình 2.1.1 Câu 1a 7
Hình 2.1.2 Đáp án 1a 8
Hình 2.2.1 Câu 1b 9
Hình 2.1.1 Đáp án 1b 10
Hình 2.3.1 Câu 1c 11
Hình 2.3.2 Đáp án 1c 12
Trang 8CHƯƠNG 1 PHƯƠNG PHÁP GIẢI BÀI TẬP
1.1 Yêu cầu 1a
Gọi thư viện sympy để tính toán toán học; matplotlib để vẽ đồ thị
Định nghĩa biến ký hiệu là ‘x’
Khởi tạo biến ‘A’ có giá trị là 50
Định nghĩa hai biểu thức toán học từ đề bài cho là ‘fx’ và ‘gx’
Nghiệm của phương trình ‘fx – gx = 0’ là giao điểm của hai đồ thị Ở đây, em sử dụng hàm ‘solve’ trong thư viện sympy để giải quyết vấn
đề trên và đưa giá trị vào biến ‘roots’
‘x1’ và ‘x2’ là hoành độ của hai điểm giao điểm
‘y1’ và ‘y2’ là tung độ tương ứng với ‘x1’ và ‘x2’
Tạo một mảng giá trị từ -1200 đến 1200 với bước nhảy là 5
Định nghĩa hàm số cho đồ thị ‘f(x)’ và ‘g(x)’
Tính giá trị của hàm số tương ứng với mỗi giá trị ‘x’
Sử dụng hàm ‘pllt.plot’ để vẽ đồ thị của ‘f(x)’, ‘g(x)’ và đánh dấu điểm giao điểm trên đồ thị
Đặt tiêu đề cho đồ thị là ‘Question 1a’ bằng hàm ‘plt.title’
Hiển thị chú thích cho đồ thị bằng hàm ‘plt.legend’ và hiển thị đồ thị bằng hàm ‘plt.show’
1.2 Yêu cầu 1b
Gọi thư viện sympy để tính toán toán học; matplotlib để vẽ đồ thị
Định nghĩa biến ký hiệu là ‘x’
Khởi tạo biến ‘A’ có giá trị là 50
Định nghĩa biểu thức ‘fx’ và ‘dfx’ là đạo hàm của ‘fx’ theo biến ‘x’
Trang 9lần lượt là hoành độ và tung độ của điểm tiếp tuyến tại x=0 ‘k’ là hệ
số góc
‘fx2’ là hàm số ‘fx’ sau khi dịch chuyển xuống 4 A3đơn vị
‘x1’, ‘x2’, ‘y1’, ‘y2’ là các giá trị của điểm giao điểm giữa đường tiếp tuyến và đồ thị hàm số ‘fx2’
‘xx’, ‘yy’ là giá trị của điểm giao điểm giữa đường tiếp tuyến và đồ thị gốc ‘fx’
Tạo mảng ‘x’ có giá trị từ -1200 đến 1000 với bước nhảy là 1 Mảng này sẽ được sử dụng để tính giá trị của các hàm số và đường tiếp tuyến tại các điểm trên trục x
Định nghĩa hàm số ‘fx’, ‘fx2’ và đường tiếp tuyến ‘pttt’ bằng lambda
Sử dụng mảng ‘x’ đã tạo để tính giá trị của ‘fx’, ‘fx2’ và đường tiếp tuyến tại từng điểm
Vẽ đồ thị bằng hàm ‘plt.plot’
Thêm tiêu đề và chú thích bằng hàm ‘plt.title’ và ‘plt.legend’
Cuối cùng là hiển thị đồ thị hàm số bằng hàm ‘plt.show’
1.3 Yêu cầu 1c
Gọi thư viện sympy để tính toán toán học; matplotlib để vẽ đồ thị
Định nghĩa hai biến ký hiệu là ‘x’ và ‘x0’
Khởi tạo biến ‘A’ có giá trị là 50
‘xm’ và ‘ym’ lần lượt là tung độ và hoành độ tiếp điểm đề bài cho
Định nghĩa biểu thức ‘fx’ và ‘dfx’ là đạo hàm của ‘fx’ theo biến ‘x’
‘fx0’ là giá trị của ‘fx’ tại ‘x0’ Và tương tự, ‘dfx0’ là giá trị của đạo hàm ‘dfx; tại ‘x0’
Tính phương trình tiếp tuyến có dạng: ‘pttt = dfx0 * (xm - x0) + fx0’
Tìm nghiệm của phương trình ‘ym – pttt = 0’ để xác định x1 và x2
Tính ‘y1’ và ‘y2’ là giá trị của f(x) tại ‘x1’ và ‘x2’
Tính ‘k1’ và ‘k2’ là hệ số góc của hàm số tại hai điểm ‘x1’ và ‘x2’
Trang 10 Từ đó, ta tìm được phương trình hai phương trình tiếp tuyến.
Tạo một mảng ‘x_values’ có giá trị từ -1200 đến 1000 với bước nhảy
là 1 Mảng này được sử dụng để tính giá trị của các hàm số và đường tiếp tuyến tại các điểm trên trục x
Định nghĩa hàm số ‘fx’ và đường tiếp tuyến ‘pttt1’, ‘pttt2’
Sử dụng mảng ‘x_values’ để tính giá trị ‘fx’, đường tiếp tuyến thứ nhất và thứ hai tại từng điểm
Vẽ đồ thị ‘fx’, ‘pttt1’ và ‘pttt2’ và đánh dấu giao điểm trên đồ thị bằng hàm ‘plt.plot’
Thêm tiêu đồ và chú thích bằng hàm ‘plt.title’ và ‘plt.legend’
Hiển thị đồ thị trên màn hình bằng hàm ‘plt.show’
Trang 11CHƯƠNG 2 MÃ NGUỒN VÀ ĐẦU RA
2.1 Yêu cầu 1a
2.1.1 Mã nguồn
Hình 2.1.1 Câu 1a
2.1.2 Đầu ra
Trang 12Hình 2.1.2 Đáp án 1a
2.2 Yêu cầu 1b
2.2.1 Mã Nguồn
Trang 13Hình 2.2.1 Câu 1b
2.2.2
Đầu ra
Trang 14Hình 2.1.1 Đáp án 1b
Trang 16Hình 2.3.1 Câu 1c
Trang 17Hình 2.3.2 Đáp án 1c
2.3.2 Đầu ra