Ví dụ về thuật toán

Một phần của tài liệu Bai giang tin hoc (Hot) (Trang 26 - 27)

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

Một phần của tài liệu Bai giang tin hoc (Hot) (Trang 26 - 27)