Trường THCS Long Tân Giáo án Tin Học 8 Tuần: Ngày soạn: Tiết: BÀI 5: TỪ BÀI TOÁN ĐẾN CHƯƠNG TRÌNH (tt). I. Mục tiêu 1. Kiến thức: - Biết mô tả thuật toán bằng phương pháp liệt kê các bước. - Hiểu thuật toán tính tổng của N số tự nhiên đầu tiên, tìm số lớn nhất của một dãy số. 2. Thái độ: - Học sinh nghiêm túc trong giờ học. II. Chuẩn bị: 1. Giáo viên: chuẩn bị tốt giáo án, sách giáo khoa. 2. Học sinh: sách giáo khoa, vở ghi bài. III. Phương pháp: - Thuyết trình, giảng giải, vấn đáp. IV. Tiến trình lên lớp: A- Ổn định lớp. B- Kiểm tra bài cũ Câu 1: Quá trình giải một bài toán trên máy tính gồm có mấy bước? Câu 2: Nêu thuật toán của bài toán “giải phương trình bậc nhất dạng bx+c=0”. C- Bài mới HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG KIẾN THỨC Hoạt động 1: Đổi giá trị của hai biến X và y. GV: Gọi HS đọc ví dụ. HS: Đọc ví dụ. GV: Gọi học sinh xác định bài toán ví dụ 4. HS: Input: Hai biến x và y có giá trị tương ứng là a và b. Output: Hai biến x, y có giá trị tương ứng là b và a. GV: Giả sử cô có 2 hộp, mỗi hộp chỉ chứa được 1 viên phấn, hộp 1 đựng viên phấn trắng, hộp 2 đựng viên phấn vàng, cô muốn chuyển viên phấn vàng ở hộp 2 sang hộp 1 và viên phấn trắng ở hộp 1 sang hộp 2. Để làm được điều đó cô phải lấy thêm 1 hộp rỗng làm trung gian. Bước 1: cô chuyển viên phấn trắng ở hộp 1 sang hộp trung gian. Bước 2: cô chuyển viên phấn vàng ở hộp 2 sang hộp 1. Bước 3: cô chuyển viên phấn trắng ở hộp trung gian sang hộp 2. Cô đặt tên cho 3 hộp của chúng ta là x, y, z. 1 HS hãy cho biết các bước hoán đổi 2 viên phấn? 1. Một số ví dụ về thuật toán. Ví dụ 4: Đổi giá trị của hai biến x và y. Input: Hai biến x và y có giá trị tương ứng là a và b. Output: Hai biến x, y có giá trị tương ứng là b và a. Bước 1: z x; Bước 2: x y; Bước 3: y z; Trường THCS Long Tân Giáo án Tin Học 8 HS: Bước 1: z x; Bước 2: x y; Bước 3: y z; Hoạt động 2: Thuật toán tìm số lớn nhất trong dãy số. GV: Gọi học sinh đọc đề bài. HS: Đọc bài. GV: Gọi HS xác định bài toán ví dụ 6. HS: Input: Dãy A các số a 1 , a 2 , , a n . Output: Giá trị max = max{ a 1 , a 2 , , a n } GV: Cách giải bài toán này như sau: đầu tiên gọi max là biến nhớ chứa số lớn nhất. Vì chưa biết số nào lớn nhất trong dãy số đã cho nên cô gán giá trị đầu tiên trong dãy số cho biến max và đem biến max này lần lượt đi so sánh với các số còn lại trong dãy số. Nếu giá trị trong dãy số lớn hơn max cô sẽ gán lại giá trị cho max là số đó. Giả sử các số đã được lưu trong các ô nhớ theo đúng thứ tự a 1 , a 2 , a 3 , HS: Bước 1: max a 1; i 1. Bước 2: i i+1; Bước 3: Nếu i>n, chuyển đến bước 5. Bước 4: Nếu a i > max, max a i , quay lại bước 2. Bước 5: Xuất ra max và Kết thúc thuật toán. Hoạt động 3: So sánh hai số thực a và b. GV: Gọi Hs đọc ví dụ. HS: Đọc vd. GV: Gọi HS xác định bài toán. HS: input: hai số thực a và b. Output: Kết quả so sánh. GV: Gọi HS lên thực hiện so sánh. HS: Bước 1: Nếu a > b, kết quả là “a lớn hơn b”. Bước 2: Nếu a < b, kết quả là “a nhỏ hơn b”; Ngược lại, kết quả là “a bằng b” Bước 3: Kết thúc thuật toán. GV: Nếu thử lại các bước với a = 6 và b = 5, ta sẽ thấy sau bước 1 ta có kết quả là gì? HS: a lớn hơn b. GV: Sau khi thực hiện bước 1 thuật toán tiếp tục thực hiện sang bước 2. Lúc này kết quả là gì? HS: a bằng b. GV: Bài toán của chúng ta sẽ có 2 kết quả, không đúng do đó chúng ta cần viết các bước của thuật toán chặt chẽ hơn. Sau bước 1, nếu đúng chúng ta có thể kết thúc thuật toán, nếu sai mới chuyển qua bước 2. 1 học sinh lên sửa lại thuật toán cho chính xác hơn. Ví dụ 6: Tìm số lớn nhất trong dãy A các số a 1 , a 2 , , a n cho trước. Input: Dãy A các số a 1 , a 2 , , a n . Output: Giá trị max = max{ a 1 , a 2 , , a n } Bước 1: max a 1; i 1. Bước 2: i i+1; Bước 3: Nếu i>n, chuyển đến bước 5. Bước 4: Nếu a i > max, max a i , quay lại bước 2. Bước 5: Xuất ra max và Kết thúc thuật toán. Ví dụ 5: Cho hai số thực a và b. Hãy cho biết kết quả so sánh hai số đó dưới dạng “a lớn hơn b”, “ a nhỏ hơn b” hoặc “a bằng b”. Input: hai số thực a và b. Output: Kết quả so sánh. Bước 1: Nếu a > b, kết quả là “a lớn hơn b”. Chuyển sang bước 3. Bước 2: Nếu a < b, kết quả là “a nhỏ hơn b”; Ngược lại, kết quả là “a bằng b”. Bước 3: Kết thúc thuật toán. Trường THCS Long Tân Giáo án Tin Học 8 HS: Bước 1: Nếu a > b, kết quả là “a lớn hơn b”. Chuyển sang bước 3. Bước 2: Nếu a < b, kết quả là “a nhỏ hơn b”; Ngược lại, kết quả là “a bằng b” Bước 3: Kết thúc thuật toán. GV: nhận xét và rút ra kết luận. D- Củng Cố: Câu 1: Hãy xác định bài toán của ví dụ 4, 5, 6 và mô tả thuật toán của các ví dụ. E- Hướng dẫn về nhà: Học sinh về nhà học bài cũ. V. Rút kinh nghiệm . 8 Tuần: Ngày soạn: Tiết: BÀI 5: TỪ BÀI TOÁN ĐẾN CHƯƠNG TRÌNH (tt). I. Mục tiêu 1. Kiến thức: - Biết mô tả thuật toán bằng phương pháp liệt kê các bước. - Hiểu thuật toán tính tổng của N số tự. x; Bước 2: x y; Bước 3: y z; Hoạt động 2: Thuật toán tìm số lớn nhất trong dãy số. GV: Gọi học sinh đọc đề bài. HS: Đọc bài. GV: Gọi HS xác định bài toán ví dụ 6. HS: Input: Dãy A các số a 1 , a 2 ,. thúc thuật toán. GV: nhận xét và rút ra kết luận. D- Củng Cố: Câu 1: Hãy xác định bài toán của ví dụ 4, 5, 6 và mô tả thuật toán của các ví dụ. E- Hướng dẫn về nhà: Học sinh về nhà học bài cũ. V.