III. HOẠT ĐỘNG DẠY HỌC
3. Ví dụ về thuật toán
Hôm trước chúng ta đã nêu ý tưởng giải bài toán sắp xếp. Hôm nay chúng ra tiếp tục xây dựng thuật toán cho bài toán này:
- Thuật toán:
+ Phương pháp liệt kê:
Bước 1: Nhập N, các số hạng a1, a2, a3, ..., aN;
Bước 2: M ← N;
Bước 3: Nếu M<2 thì đưa ra dãy đã được sắp xếp rồi kết thúc;
Bước 4: i ← 0; M ← M – 1;
Bước 5: i ← i + 1;
Bước 6: Nếu i > M thì quay lại bước 3;
Bước 7: Nếu ai>ai+1 thì tráo đổi ai và ai+1 cho nhau;
Bước 8: Quay lại Bước 5;
Yêu cầu học sinh về nhà chuyển thuật toán trên sang sơ đồ khối.
Mô phỏng quá trình thực hiện thuật toán:
Ví dụ 3: Bài toán tìm kiếm
Cho dãy A gồm N số nguyên a1, a2, ... , aN và một số nguyên k. Cần biết có hay không chỉ số i (1 ≤ i ≤ N) mà ai = k. Nếu có hãy cho biết chỉ số đó. - Số nguyên k được gọi là khóa tìm kiếm.
Thuật toán tìm kiếm tuần tự
? Hãy xác định Input và Output của bài toán?
- Xác định bài toán:
HS nghe giảng, ghi chép.
HS lên bảng xác định: Nhập N, dáy số a1, a2,a3, ..., aN Đưa ra A Rồi kết thúc M<2 ? ai>ai+1 ? i > M? i ← 0, M ← M-1 i←i +1 sai Đúng sai Đúng M ← N
Tráo đổi ai và ai+1 Đúng
- Ý tưởng giải thuật:
Lần lượt từ số hạng thứ nhất, so sánh giá trị của số hạng đang xét với khóa cho đến khi gặp 1 số hạng bằng khóa hoặc khi xét hết dãy mà không có giá trị nào bằng khóa.
- Thuật toán:
+ Phương pháp liệt kê:
Bước 1: Nhập N, các số hạng a1, a2, a3, ..., aN và khóa k;
Bước 2: i ←1 ;
Bước 3: Nếu ai = k thì chỉ số i rồi kết thúc;
Bước 4: i ← i + 1;
Bước 5: Nếu i > N thì thông báo dãy A không có số hạng nào có giá trị bằng k, rồi kết thúc;
Bước 6: Quay lại bước 3;
+ Input: Dãy A gồm N số nguyên khác nhau a1, a2, ... , aN
+ Output: Chỉ số i mà ai = k hoặc thông báo không có số hạng nào của dãy có giá trị bằng k.
HS ghi chép, nghe giảng
IV. CỦNG CỐ, ĐÁNH GIÁ CUỐI BÀI
− Nhắc lại khái niệm bài toán.
− Muốn giải một bài toán, trước tiên phải xác định được Input và Output của bài toán: + Input: thông tin đưa vào máy.
+ Output: Thông tin muốn lấy từ máy.
− Học sinh về nhà tiếp tục nghiên cứu phần ví dụ và các phần tiếp thep của bài học.
Tiết: 10, 11, 12, 13, 14