CHƯƠNG 4: GIẢI QUYẾT VẤN ĐỀ,
BÀI TOÁN BẰNG MÁY TÍNH
GV: Trần Phước Tuấn
EMAIL: tranphuoctuan.khoatoan.dhsp@gmail.com
Nội dung bài học
1. Vấn đề - bài toán
2. Thuật toán - thuật giải
3. Các phương pháp biểu diễn thuật toán
4. Các bước để giải một bài toán trên máy tính
5. Tổng quan về ngôn ngữ lập trình
Page 2
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
1
1. Vấn đề - bài toán
Khái niệm
• Vấn đề thường được dùng với nghĩa rộng hơn
bài toán, bài toán là vấn đề mà để giải quyết nó
phải liên quan ít nhiều đến tính toán
• Pitago chia mọi vấn đề mà con người cần giải
quyết thành hai loại:
– Theorema: vấn đề cần khẳng định tính đúng – sai
– Problema: vấn đề cần tìm giải pháp để để đạt
được mục tiêu từ những điều kiện ban đầu nào đó
Page 3
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
1. Vấn đề - bài toán
Khái niệm
• Theo nhiều kết quả nghiên cứu: việc giải quyết
vấn đề - bài toán mà Pitago nêu ra đều có thể
diễn ra theo một sơ đồ chung:
AB
• Ở đây:
– A có thể là giả thiết, điều kiện ban đầu
– B có thể là kết luận, mục tiêu cần đạt
– là suy luận, giải pháp cần xác định
Page 4
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
2
1. Vấn đề - bài toán
Khái niệm
• Ví dụ 1: Bài toán kiểm tra tính nguyên tố
– Cho: Số nguyên dương N
– Cần biết: N có là số nguyên tố hay không?
• Ví dụ 2: Bài toán quản lý hồ sơ sinh viên
– Cho: Hồ sơ gốc của các sinh viên trong trường
– Cần biết: Bảng thống kê, phân loại sinh viên
theo kết quả học tập
Page 5
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
1. Vấn đề - bài toán
Khái niệm
• Cấu trúc một bài toán:
– Thông tin đầu vào (input): cái cho trước
– Thông tin đầu ra (output): cái cần tìm
• Giải bài toán: là việc xác định tường minh
output theo input bằng một quá trình có thể
thực hiện một cách hiệu quả
Page 6
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
3
1. Vấn đề - bài toán
Một số phương pháp giải quyết vấn đề - bài toán bằng máy tính
1.
2.
3.
4.
5.
Page 7
KĨ THUẬT CHIA ÐỂ TRỊ
KĨ THUẬT “THAM LAM”
QUY HOẠCH ÐỘNG
KĨ THUẬT QUAY LUI
KĨ THUẬT TÌM KIẾM ÐỊA PHƯƠNG
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
2. Thuật toán – thuật giải
Thuật toán – khái niệm
• Thuật toán là khái niệm cơ sở của toán học
và tin học
• Thuật toán là một dãy các chỉ thị rõ ràng
và có thể thi hành được để hướng dẫn
thực hiện hành động nhằm đạt được mục
tiêu đặt ra
• Thuật toán là sự thể hiện của một phương
pháp để giải quyết vấn đề
Page 8
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
4
2. Thuật toán – thuật giải
Thuật toán – đặc trưng
• Nhập (input). Các thuật toán thường có giá trị đầu vào
• Xuất (output). Từ giá trị vào thuật toán cho ra kết quả.
• Tính xác định (definiteness). Các bước trong thuật toán phải chính
xác rõ ràng.
• Tính hữu hạn (finiteness). Thuật toán phải cho ra lời giải (hay kết
quả) sau một số bước hữu hạn.
• Tính hiệu quả. Tính hiệu quả được đánh giá dựa trên một số tiêu
chuẩn như khối lượng tính toán, không gian và thời gian sử dụng
(khi thực hiện thuật toán trên máy tính).
• Tính tổng quát. Thuật toán phải áp dụng được cho tất cả các bài
toán cùng dạng, chứ không chỉ áp dụng được cho một số trường
hợp riêng lẻ nào đó.
Page 9
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
2. Thuật toán – thuật giải
Thuật toán
• Cùng một bài toán có thể có nhiều thuật
toán khác nhau để giải
• Thuật toán đơn giản, dễ hiểu, có độ chính
xác cao, được bảo đảm về mặt toán học, dễ
triển khai trên máy, thời gian thao tác ngắn,
được gọi là thuật toán tối ưu
Page 10
T.P.Tuấn-TIN HỌC ĐẠI CƯƠNG
9/16/2008
5
nguon tai.lieu . vn