Giáo án Tin học lớp 10 Tiết 18 theo PPCT Ngày soạn: 07 / 11 / 2007 Đ6. Giải bài toán trên máy tính A. Mục tiêu 1. Về kiến thức - Hiểu cách tổ chức giải bài toán trên máy tính, tức là cách dùng máy tính thực hiện các công việc cần làm. - Hiểu rõ hơn các khái niệm: Bài toán, thuật toán, chơng trình. 2. Về kĩ năng -Thực hiện đựoc một số bớc để giải bài toán đơn giản trên máy tính 3. Về thái độ - Rèn luyện thái độc học tập nghiêm túc, suy luận khoa học và sáng tạo. B. Đồ dùng dạy học - Giáo án, máy tính, máy chiếu C. Hoạt động dạy học Stt Thứ, ngày Tiết Lớp Sĩ số Ghi chú 1 2 Hoạt động của thầy Hoạt động của trò và hình minh họa Hoạt động 1: Giúp học sinh thấy đợc tính u việt của việc giải bài toán bằng máy tính. - Trình chiếu bài toán ví dụ: Tìm ƯCLN của các cặp số nguyên dơng M và N, với: M = 25, N = 5; M = 88, N = 121; M= 997, N = 29; M = 2006, N = 1998. - Phát vấn học sinh: "Hãy chỉ ra những u điểm của việc giải bài toán bằng máy tính so với cách giải thông thờng?" - Giáo viên tổng hợp các ý kiến của học sinh và phân tích kĩ hơn: Bài toán ví dụ yêu cầu tìm ƯCLN của nhiều cặp số nguyên dơng khác nhau (M, N), thực chất là giải bài toán Học sinh trả lời: Nhanh, chính xác Ví dụ không cần máy tính ta có thể dễ dàng tìm đợc ƯCLN của các cặp số: M = 25, N = 5 => ƯCLN = 5 Trần Anh Trúc Tổ Toán Tin THPT Việt Bắc 1 Giáo án Tin học lớp 10 với nhiều bộ Input khác nhau (một lớp các bài toán). Vì vậy, những bài toán giải trên máy tính là những bài toán có tính tổng quát. Hoạt động 2: Nêu tiến trình thực hiện giải bài toán trên máy tính. 1. Xác định bài toán: Xác định Input và Output của bài toán. ví dụ: Bài toán tìm ƯCLN của hai số nguyên dơng M, N. - Input: giá trị của M, N. - Output: ƯCLN của M, N. GV đa ra một số ví dụ để học sinh luyện tập xác định bài toán. 2. Lựa chọn hoặc thiết kết thuật toán a. Lựa chọn thuật toán - GV phân tích để học sinh hiểu: Một bài toán có thể giải bằng nhiều thuật toán khác nhau, nhng cần lựa chọn thuật toán tối u theo một tiêu chí nào đó, chẳng hạn dùng ít tài nguyên máy tính hoặc có thời gian thực hiện ngắn. - Trình chiếu ví dụ về thuật toán giải bài toán tìm ƯCLN và lu ý so sánh tính tối u của thuật toán đã lựa chọn với những thuật toán khác. b. Diễn tả thuật toán - GV phân tích để học sinh hiểu bớc thực hiện này giúp ngời lập trình viết chơng trình thuận lợi, dễ dàng và chính xác hơn. - Diễn tả thuật toán đã lựa chọn bằng phơng pháp liệt kê hoặc sơ đồ khối. - Trình chiếu và giải thích thuật toán ví dụ tìm ƯCLN của hai số nguyên dơng M và N. - Muốn học sinh hiểu rõ quá trình thực hiện thuật toán, giáo viên cần khai thác tối đa phần mô phỏng thuật toán với từng bộ test đã đợc thiết kế trong giáo án, sau đó đa thêm một số bài tập khác để học sinh luyện tập. M = 88, N = 121 => ƯCLN = 11 Nhng để tìm ƯCLN của cặp số: M = 2006, N = 1998 sẽ mất rất nhiều thời gian để tìm kết quả. Học sinh luyện tập xác định Input và Output của các bài toán. Lựa chọn thuật toán Diễn tả thuật toán tìm ƯCLN bằng sơ đồ khối Học sinh quan sát ví dụ làm bài luyện Trần Anh Trúc Tổ Toán Tin THPT Việt Bắc 2 Giáo án Tin học lớp 10 3. Viết chơng trình - Trình bày cho học sinh thấy rõ việc viết ch- ơng trình là tổng hợp giữa việc lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để diễn đạt đúng thuật toán. - Thông qua ví dụ về một chơng trình viết bằng ngôn ngữ Pascal, giáo viên chỉ rõ cho học sinh phần tổ chức dữ liệu, phần diễn đạt thuật toán và mối quan hệ của chúng trong chơng trình. - Giáo viên cần lu ý học sinh: Chơng trình dịch chỉ có thể phát hiện lỗi ngữ pháp. 4. Hiệu chỉnh Bớc thực hiện này nhằm phát hiện lỗi của chơng trình và sửa lỗi - Cách làm: chạy thử chơng trình với một số bộ input tiêu biểu phụ thuộc vào đặc thù của bài toán để kiểm tra kết quả, từ đó phát hiện lỗi và sửa chữa. - Hớng dẫn và trình bày một số bộ test tiêu biểu của bài toán tìm ƯCLN, sau đó đa ra một số bài toán ví dụ khác yêu cầu học sinh tìm các bộ test tiêu biểu để hiệu chỉnh chơng trình nh: Giải phơng trình bậc hai(a<>0), kiểm tra tính nguyên tố của một số nguyên dơng, bài toán tìm kiếm 5. Viết tài liệu - Viết tài liệu là việc mô tả chi tiết bài toán, tổ chức dữ liệu, thuật toán và hớng dẫn sử dụng. Giáo viên nên giải thích để học sinh hiểu rằng tài liệu là rất có ích cho ngời sử dụng và cho việc đề xuất những khả năng hoàn thiện thêm. - Trình chiếu các yêu cầu cần có của tài liệu. tập. Học sinh quan sát và nhận xét. Ví dụ: Trong chơng trình giải bài toán tìm cln của hai số nguyên dơng M, N đợc viết trong ngôn ngữ lập trình Pascal có: - Phần tổ chức dữ liệu: Var M, N: Integer; - Phần diễn đạt thuật toán: Begin Clrscr; Write('Nhap vao so nguye duong M, N); Readln(M, N); While M<>N do begin if M>N then M:=M-N else N:=N-M; end; Writeln('ƯCLN cua hai so la:', M); readln; End. Ví dụ: Chơng trình giải bài toán tìm ƯCLN, nên cho chạy thử với các bộ test mà ngời dùng có thể dễ dàng biết đợc kết quả trong các trờng hợp sau: a) M chia hết cho N; b) M = N; c) M, N nguyên tố cùng nhau. Học sinh theo dõi, từ đó áp dụng để tìm các bộ test của các bài tập luyện tập và trình bày lí do sử dụng bộ test đã lựa chọn. Trần Anh Trúc Tổ Toán Tin THPT Việt Bắc 3 Giáo án Tin học lớp 10 d. củng cố - Các bớc để giải bài toán: B1. Xác định bài toán B2. Lựa chọn và xây dựng thuật toán B3. Viết chơng trình B4. Hiểu chỉnh B5. Viết tài liệu - Bài tập về nhà: Các câu hỏi cuối bài học. - Đọc trớc bài 7: Phần mềm máy tính Trần Anh Trúc Tổ Toán Tin THPT Việt Bắc 4 . lớp các bài toán) . Vì vậy, những bài toán giải trên máy tính là những bài toán có tính tổng quát. Hoạt động 2: Nêu tiến trình thực hiện giải bài toán trên máy tính. 1. Xác định bài toán: Xác. học lớp 10 Tiết 18 theo PPCT Ngày soạn: 07 / 11 / 2007 6. Giải bài toán trên máy tính A. Mục tiêu 1. Về kiến thức - Hiểu cách tổ chức giải bài toán trên máy tính, tức là cách dùng máy tính thực. công việc cần làm. - Hiểu rõ hơn các khái niệm: Bài toán, thuật toán, chơng trình. 2. Về kĩ năng -Thực hiện đựoc một số bớc để giải bài toán đơn giản trên máy tính 3. Về thái độ - Rèn luyện thái