Giáo Án 6 GIẢI BÀI TOÁN TRÊN MÁY TÍNH pot

7 417 0
Giáo Án 6 GIẢI BÀI TOÁN TRÊN MÁY TÍNH pot

Đang tải... (xem toàn văn)

Thông tin tài liệu

Giáo Án 6 GIẢI BÀI TOÁN TRÊN MÁY TÍNH Giáo viên hướng dẫn : Thầy Trần Doãn Vinh. Sinh viên: Đào Ngọc Hà Lớp K56A CNTT - ĐHSPHN. I.Mục đích, yêu cầu : - Học sinh nắm được nội dung các bước cần thực hiện khi giải một bài toán trên máy tính. - Hiểu rõ hơn các khái niệm như : bài toán, thuật toán, dữ liệu, lệnh, ngôn ngữ lập trình và chương trình. - Giúp học sinh thêm yêu thích môn học. II. Phương pháp – Phương tiện: 1. Phương pháp: Kết hợp các phương pháp giảng dạy như thuyết trình, vấn đáp, … 2. Phương tiện : - Sách giáo khoa Tin học 10. - Vở ghi lý thuyết Tin học 10. - Sách tham khảo (nếu có). III.Tiến trình lên lớp, nội dung bài giảng: A. Ổn định lớp : (1’): - Yêu cầu lớp trưởng báo cáo sĩ số. B. Kiểm tra bài cũ và gợi động cơ. (2’) Trong quá trình học bài mới sẽ kết hợp kiểm tra bài cũ và cho điểm. Trong bài trước, chúng ta đã biết có thể giải bài toán bằng cách dùng máy tính.Vậy để giải một bài toán bằng máy tính thường được tiến hành như thế nào? Để hiểu rõ hơn, hôm nay chúng ta sẽ học bài: Giải bài toán trên máy tính. C. Nội dung bài giảng: Nội dung Hoạt động giữa thầy và trò Thời gian 1.Xác định bài toán. Mỗi bài toán gồm 2 thành phần: Input và Output. Xác định bài toán là xác định rõ hai thành phần này và mối quan hệ giữa chúng. Cần xác định các thông tin đó cẩn thận để lựa chọn thuật toán. Thành phần Input cần xác định rõ phạm vi của các giá trị để chọn cách thể hiện dữ liệu thích hợp. 5' 2.L ựa chọn hoặc thiết kế thuật toán a. Lựa chọn thuật toán. - Là bước quan trọng Hỏi: Thế nào là lệnh và thuật toán? Không nên theo đuổi việc định nghĩa thật chính xác thế nào là lệnh, chương trình 7' nhất để giải một bài toán. Mỗi bài toán có thể có nhiều thuật giải. Cần thiết kế hoặc chọn một thuật toán phù hợp để giải bài toán cho trước. Ví dụ : Bài toán tìm kiếm, nếu dãy đã sắp xếp thuật toán tìm kiếm nhị phân cần ít thao tác hơn thuật toán tìm kiếm tuần tự. - Các tiêu chí lựa chọn hoặc thiết kế thuật toán : . Thời gian thực hiện . Số lượng ô nhớ . Độ phức tạp của thuật toán Chú ý khi lựa chọn thuật toán cần phải chọn thuật toán có độ thời gian thực hiện nhanh b. Diễn tả thuật toán mà nên giới thiệu thông qua các chương trình cụ thể: Ví dụ trên MSDOS cd\ là một lệnh. Lệnh đó có tác dụng quay trở về tên ổ cứng mà con trỏ DOS đang đứng. Hoặc lệnh dir : cho phép xem những file đang có trong một thư mục… Thuật toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao cho sau khi thực hiên dãy thao tác ấy, từ Input của bài toán, ta nhận được Output cần tìm Yếu tố thời gian phụ thuộc vào nhiều yếu tố : Ngôn ngữ lập trình, cấu hình máy, …và số lượng các phép toán trong một chương trình Hỏi: Có mấy cách để diễn tả thuật toán ? 2 cách: - Liệt kê. (Thuật giải của nhà bác học cổ Ơclid) - Sơ đồ khối. Là công cụ giúp ta diễn tả thuật toán một cách trực quan. Sơ đồ khối được tạo bởi 4 loại khối nối với nhau bằng các cung. 10' Ví dụ: Tìm UCLN của hai số nguyên dương M và N. . Xác định bài toán - Input: Cho M, N -Output: ƯCLN(M,N). . Ý tưởng: Sử dụng những điều đã biết sau: - Nếu M =N thì giá trị chung đó là ƯCLN(M,N) - Nếu M < N thì ƯCLN(M,N) = ƯCLN(M<N-M) - Nếu M > N tnì ƯCLN(M,N) = ƯCLN(M-N,N). . Thuật toán Cách liệt kê - Bước 1: Nhập M, N - Bước 2: Nếu M = N thì ƯCLN(M,N) = M - Bước 3: Nếu M > N thì M = M - N. Quay lại bước 2 - Bước 4: N = N - M. Quay lại bước 2 - Bước 5: Đưa ra kết qủa ƯCLN rồi kết thúc Cung Diễn tả thuật toán trên bằng sơ đồ khối ? Ví dụ mô phỏng việc thực hiện thuật toán trên: Sai Sai Đúng Nh ập M v à N M = N ? Đưa ra M rồi kết thúc M>N ? N = N - M M = M - N Đúng Kh ối B ắt đ ầu Kh ối thao t ác Khối điều kiện Khối kết thúc M=10 N=25 N=15 N=5 N=5 M=10 M=10 M=5 N <- N-M N <- N-M M<- M-N 3. Viết chương trình 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. Nên chọn một ngôn ngữ lập trình hoặc một phần mềm chuyên dụng thích hợp với thuật toán. Mỗi ngôn ngữ lập trình có cấu trúc và những quy định ngữ pháp riêng. Chương trinh dịch sẽ phát hiện và thông báo các lỗi về mặt ngữ pháp 4' 4. Hiệu chỉnh Sau khi viết xong, cần phải thử chương trình bằng cách thực hiện nó với một số bộ Input phụ thuộc vào đặc điểm của bài toán.Bằng cách đó ta được các bộ Output tương ứng. Nếu gặp lỗi ta phải sửa lại chương trình. Quá trình trên gọi là hiệu chỉnh. Ví dụ: Đề xuất các Test tiêu biểu để kiểm tra tính đúng đắn của chương trình: Trả lời: Giải phương trình ax 2 + bx + c = 0 Xét Delta Delta < 0 phương trình vô nghiệm Delta = 0 phương trình 1 nghiệm kép Delta > 0 phương trình 2 nghiệm phân biệt 8' D. Củng cố bài.(2') Như vậy qua bài này chúng ta đã hiểu rõ hơn về cách máy tính làm việc với một bài toán và cách giải một bài toán bằng máy tính. Để có thể làm được một số bài tập chúng ta cần nắm được các bước cần thực hiện khi giải một bài toán bằng máy tính. E. Bài tập về nhà.(1') Tìm hiểu về thuật giải ơclid và áp dụng vào bài toán sau: Có 15 que diêm, Hai người chơi luân phiên bốc diêm, mỗi lượt, mỗi người bốc từ 1 đến 3 que diêm. Người nào phải bôc cuối cùng sẽ thua cuộc. Hãy viết thuật giải để người đi trước luôn thắng cuộc. Gợi ý: bằng phương pháp liệt kê ra từng bước. Các bộ Input và Output tương ứng được gọi là Test 5. Viết tài liệu Tài liệu phải mô tả bài toán, thuật toán, thiết kế chương trình và hướng dẫn sử dụng. Tài liệu rất có ích cho người sử dụng chương trình và cho việc hoàn thiện thêm chưong trình. Tất cả các bước trên có thể lặp lại nhiều lần cho đến khi ta cho rằng chương trình đã làm việc đúng đắn và hiệu quả. 5' VI. Nhận xét, rút kinh nghiệm giờ giảng. Nhận xét đánh giá của giáo viên hướng dẫn. . tính. Vậy để giải một bài toán bằng máy tính thường được tiến hành như thế nào? Để hiểu rõ hơn, hôm nay chúng ta sẽ học bài: Giải bài toán trên máy tính. C. Nội dung bài giảng: Nội dung. D. Củng cố bài. (2') Như vậy qua bài này chúng ta đã hiểu rõ hơn về cách máy tính làm việc với một bài toán và cách giải một bài toán bằng máy tính. Để có thể làm được một số bài tập chúng. hoặc chọn một thuật toán phù hợp để giải bài toán cho trước. Ví dụ : Bài toán tìm kiếm, nếu dãy đã sắp xếp thuật toán tìm kiếm nhị phân cần ít thao tác hơn thuật toán tìm kiếm tuần tự.

Ngày đăng: 11/08/2014, 06:22

Tài liệu cùng người dùng

Tài liệu liên quan