3. GIỚI THIỆU VỀ MÁY TÍNH (TIẾT 2)
Bài 4: BÀI TOÁN VÀ THUẬT TOÁN
1. Khái niệm bài toán:
2. Khái niệm về thuật toán:
Hoạt động 3: Tìm hiểu các giải bài toán tìm giá trị lớn nhất của dãy số nguyên
Hoạt động của giáo viên Họat động của học sinh Nội dung
(Hình thành và phát triển năng lực sử dụng ngôn ngữ, giải quyết vấn đề, tự quản lý và năng lực tự học, giao tiếp và năng lực hợp tác)
-Xét ví dụ giải bài toán bằng thuật toán: Tìm giá trị lớn nhất của một dãy số nguyên.
-Ví dụ: Tìm giá trị lớn nhất của một dãy số nguyên.
- Để xây dựng thuật toán cho một bài toán nào đó, ta cần thực hiện các bước:
- Xác định bài toán (tức tìm Input – Output của bài toán). Cho biết Input – Output của bài toán trên?
-Input: Số nguyên dương N và dãy N số a1, a2, …, aN.
-Output: Giá trị Max của dãy số
-Input: Số nguyên dương N và dãy N số a1, a2, …, aN. -Output: Giá trị Max của dãy số
-Nêu ý tưởng: Tức là giải bài toán đó như thế nào.
Cho biết ý tưởng bài toán trên? Yêu cầu họp nhóm thảo luận.
-Trưởng nhóm trình bày ý tưởng:
+Khởi tạo giá trị Max = a1.
+Lần lượt với i từ 2 đến N, so sánh giá trị số hạng ai với giá trị Max, nếu ai >
Max thì Max nhận giá trị mới là ai.
-Ý tưởng: sử dụng một biến (ô nhớ) có tên là Max, vậy tại sao lại khởi tạo giá trị Max = a1.
-Max = a1 tức là sử dụng ô nhớ Max là số lớn nhất cho nó bằng giá trị đầu tiên a1. (vị trí bắt đầu tìm là vị trí 1 và cứ tìm tuần tự cho hết dãy số)
Hoạt động của giáo viên Họat động của học sinh Nội dung -Ta có thể khởi tạo Max
bằng giá trị khác không?
-Ta có thể khởi tạo Max bằng giá trị khác, nhưng như vậy là không hiệu quả vì lúc đó ta phải khởi tạo biến chỉ số i là 1 rồi sau đó tìm từ vị trí 2 đến N. Còn Max = a1 thì không cần khởi tạo i = 1.
- Thuật toán biêu diễn bằng cách liệt kê:
B1: Nhập N và dãy a1, …, aN
B2: Max a1; i 2
B3: Nếu i > N thì đưa ra giá trị Max và kết thúc.
B4: Nếu ai > max thì Max ai
B5: i i +1, quay lại B3.
- Dựa vào việc xác định và đưa ra ý tưởng bài toán. Ta có thể đưa ra thuật toán . Thuật toán giải bài toán có thể thực hiện bằng hai cách như:
liệt kê các bước cụ thể để giải bài toán hay biểu diễn bằng sơ đồ khối.
Thuật toán biêu diễn bằng sơ đồ khối: (SGK)
-Thuật toán biêu diễn bằng sơ đồ khối:
Giải thích các kí hiệu trong sơ đồ:
+ Hình thoi thể hiện thao tác so sánh.
+ Hình chữ nhật thể hiện các phép tính toán.
+ Hình ô van thể hiện thao tác nhập xuất dữ liệu;
+Các mũi tên qui định trình tự thực hiện các
Hoạt động của giáo viên Họat động của học sinh Nội dung thao tác.
-Yêu cầu học sinh họp nhóm và giải thích ví dụ mô phỏng bằng sơ đồ khối trong SGK
-Họp nhóm và giải
Thích mô phỏng bằng sơ đồ khối trong SGK
- Nhân xét và giải thích ví dụ mô phỏng các bước thực hiện thuật toán trên với
N = 11 và dãy A: 5, 1, 4, 7, 6, 3, 15, 8, 4, 9, 12 trong SGK.
-Đầu tiên gán Max=a1=5 so sánh Max với a2 = 1 thì giá trị lớn nhất trong hai số Max (Max=a1) và a2 là 5 nên Max lúc này cũng nhận giá trị là 5 vậy lúc này Max =5 tiếp tục so sánh ….. thì ta có Max bằng 15.
- Qua định nghĩa, thuật toán có những tính chất gì?
-Qua định nghĩa, thuật toán có 3 tính chất:
+ Tính dừng + Tính xác định +Tính đúng đắn
Qua định nghĩa thuật toán có 3 tính chất:
+ Tính dừng: dựa vào biến i và sau mỗi bước thì tăng i +1, đến i > N dừng.
+ Tính xác định: thuật toán được thực hiện một cách tuần tự.
+ Tính đúng đắn: sau khi thực hiện xong, kết quả
Hoạt động của giáo viên Họat động của học sinh Nội dung chắc chắn sẽ đúng.
-Giải thích tính chất của thuật toán thể hiện trong ví dụ trên.
-Tính dừng: Vì giá trị i mỗi lần tăng lên 1 nên sau N lần thì i > N, khi đó kết quả so sánh ở bước 3 xác định việc đưa ra giá trị max rồi kết thúc.
-Tính xác định: Thứ tự các bước của thuật toán được mặc định là tuần tự nên sau bước 1 là bước 2, sau bước 2 là bước 3. Kết quả các phép so sánh trong bước 3 và bước 4 đều xác định duy nhất bước tiếp theo cần thực hiện.
-Tính đúng đắn: Vì thuật toán so sánh Max với từng số hạng của dãy số và thực hiện Max ai nếu ai >
Max nên sau khi so sánh hết N số hạng của dãy thì Max là giá trị lớn nhất.
-
3. Luyện tập và thực hành:
- Cho biết Input – Output, và ý tưởng của bài toán tìm giá trị lớn nhất của một dãy số nguyên ?
- Để xây dựng thuật toán cho một bài toán nào đó, ta thực hiện thế nào ?
4. Vận dụng mở rộng và bổ sung:
- Tìm hiểu bài toán sắp xếp dãy số thành dãy không giảm.
IV. Rút kinh nghiệm:
- Ưu điểm:
...
...
...
- Hạn chế:
...
...
...
Tiết PPCT: 12-13
§ 4: BÀI TOÁN VÀ THUẬT TOÁN (Tiết 3-4)
I. Mục tiêu:
1. Kiến thức:
- Biết xây dựng thuật toán: sắp xếp dãy số thành dãy không giảm.
2. Định hướng hình thành và phát triển năng lực:
- Hình thành và phát triển năng lực sử dụng ngôn ngữ
- Hình thành và phát triển năng lực giao tiếp và năng lực hợp tác (thông qua hoạt động theo nhóm).
- Hình thành và phát triển năng lực giải quyết vấn đề.
- Hình thành và phát triển năng lực tự quản lý và năng lực tự học.
II. Phương tiện dạy học
1. Chuẩn bị của giáo viên: Giáo án, sách giáo khoa …
2. Chuẩn bị của học sinh: sách giáo khoa, tập, đọc trước bài ở nhà…
III. Hoạt động dạy – học:
1. Tình huống xuất phát:
- Kiểm tra bài cũ: Cho biết Input – Output, ý tưởng, liệt kê các bước thuật toán kểm tra tính tìm giá trị lớn nhất của dãy số
- Ngoài đời có rất nhiều việc liên quan tới sắp xếp, ví dụ như sắp xếp tăng dần theo chiều cao trong một hàng, ...Vậy thuật toán đó như thế nào, tiết này chúng ta sẽ cung tìm hiểu thuật toán sắp xếp.
2. Hình thành kiến thức:
Hoạt động của giáo viên
Họat động của học sinh Nội dung