Tin học bài THỰC HÀNH số 4

9 1.4K 0
Tin học bài THỰC HÀNH số 4

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

Thông tin tài liệu

Tin học: BÀI THỰC HÀNH SỐ 4(T1) I. MỤC TIÊU - Củng cố lại các kiến thức cơ bản khi lập trình với kiểu dữ liệu mảng. - Làm quen với thuật toán sắp xếp đơn giản. - Rèn luyện kĩ năng sử dụng kiểu dữ liệu có cấu trúc, kĩ năng diễn đạt thuật toán bằng chương trình sử dụng dữ liệu kiểu mảng. - Rèn luyện kĩ năng nhận xét, phân tích và đề xuất cách giải bài toán sao cho chương trình chạy nhanh hơn. II. ĐỒ DÙNG DẠY HỌC Chuẩn bị của giáo viên - Giáo án, sách giáo khoa, phòng máy vi tính, máy chiếu Projector để hướng dẫn. Chuẩn bị của học sinh - Sách giáo khoa, chương trình đã được viết sẵn. III. HOẠT ĐỘNG DẠY-HỌC Hoạt động : Rèn luyện kỹ năng sử dụng kiểu dữ liệu mảng để phân tích và giải một số bài toán. HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Giáo viên nêu bài toán: Sắp xếp dãy gồm n số nguyên Tìm hiểu đề bài. thành dãy không giảm bằng thuật toán tráo đổi. Gợi ý để học sinh nhớ lại thuật Chú ý theo dõi những dẫn dắt của toán sắp xếp tăng dần (Đã được xây giáo viên để trả lời câu hỏi dựng trong chương trình tin học lớp 10). - Lấy một ví dụ thực tiễn: Sắp - Lần lượt lấy từng phần tử từ trái xếp một dãy các viên bi theo kích qua phải. thước không giảm. - Cứ mỗi phần tử ta đem so sánh lần lượt với các phần tử đứng bên phải của nó. - Nếu nhỏ hơn thì đổi chỗ. - Yêu cầu: Vạch ra các bước để sắp - Lần lượt lấy từng phần tử của dãy xếp các phần tử của một mảng đem so sánh với các phần tử đứng không giảm. bên phải của nó. - Nếu phần tử nào nhỏ hơn phần tử đó thì đổi chổ. - Giáo viên chiếu chương trình lên Quan sát chương trình. bảng. - Nhận xét: Xét 2 câu lệnh: For i:= 1 to n-1 do HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH For j:= i+1 to n do If A[i ] > A[j] then Begin Tg:= A[i]; A[i]:=A[j]; A[j]:= tg; end; - Hỏi: Vai trò của biến i, j trong - Biến i, j dùng làm chỉ số. chương trình? - Mỗi vòng lặp For trong đoạn - Mỗi vòng lặp For ứng với mỗi chương trình sắp xếp có ý nghĩa gì? phép duyệt lần lượt. - Ứng với mỗi giá trị của i (biến Ta xác định được phần tử ở vị trí i đếm của vòng lặp ngoài) ta xác của dãy sau khi sắp xếp. định được phần tử nào? - Hỏi: Ba lệnh tg:=a[i]; a[i]:=a[j]; - Dùng để đổi giá trị của hai phần tử a[j]:=tg; có ý nghĩa gì? a[i] với a[j]. - Thực hiện chương trình, nhập dữ - Quan sát giáo viên thực hiện liệu để học sinh thấy kết quả chương trình. chương trình. - Yêu cầu học sinh soạn chương Độc lập soạn chương trình vào máy trình trên vào máy cá nhân và chạy cá nhân, chạy thử chương trình và thử các bộ test của giáo viên. thông báo kết quả. - Đặt yêu cầu mới: Khai báo thêm biến nguyên Dem và bổ sung vào Quan sát yêu cầu mới, chú ý định chương trình đoạn lệnh cần thiết để hướng giải quyết của giáo viên. HOẠT ĐỘNG CỦA GIÁO VIÊN biến Dem tính số lần thực hiện tráo đổi trong thuật toán. In kết quả tìm được ra màn hình. HOẠT ĐỘNG CỦA HỌC SINH - Hỏi: Đoạn chương trình nào dùng tg:=a[i]; a[i]:=a[j]; a[j]:=tg; để thực hiện tráo đổi giá trị? - Yêu cầu hoc sinh viết lệnh để đếm Sau khi thực hiện xong một lần tráo số lần tráo đổi. đổi thì tăng giá trị biến đếm lên 1 - Dem := Dem+1; - Hỏi: Lệnh này được viết ở vị trí - Ngay sau đoạn lệnh tráo đổi. nào trong chương trình? - Yêu cầu học sinh soạn thêm câu lệnh vào chương trình đã soạn trên - Viết thêm câu lệnh. máy cá nhân. - Yêu cầu học sinh nhập dữ liệu vào - Nhập dữ liệu theo yêu cầu của giáo của giáo viên và thông báo kết quả. viên, thực hiện chương trình và thông báo kết quả sau khi thực hiện. - Tiếp cận học sinh thực hành và giúp đỡ học sinh yếu. - Chiếu chương trình mẫu để học Quan sát chương trình mẫu và đối sinh quan sát. chiếu. - Đánh giá kết quả của học sinh. - Dành thời gian còn lại để học sinh thực hành lại toàn bài IV. TỔNG KẾT: - Một bài toán có thể có nhiều thuật toán nhưng cần lựa chọn thuật toán có số lần thực hiện phép tính ít nhất. - Yêu cầu học sinh xem trước phần còn lại của bài thực hành 4. - Làm các bài tập trong đề cương để chuẩn bị cho tiết thực hành sau. TiÓt 26 Ngµy so¹n: 20/11/2010 BÀI THỰC HÀNH SỐ 4(T2) I. MỤC TIÊU: - Rèn luyện kĩ năng sử dụng kiểu dữ liệu có cấu trúc, kĩ năng diễn đạt thuật toán bằng chương trình sử dụng dữ liệu kiểu mảng. - Rèn luyện kĩ năng nhận xét, phân tích và đề xuất cách giải bài toán sao cho chương trình chạy nhanh hơn. II. ĐỒ DÙNG DẠY HỌC Chuẩn bị của giáo viên - Giáo án, sách giáo khoa, Phòng máy vi tính, máy chiếu Projector để hướng dẫn. Chuẩn bị của học sinh - Sách giáo khoa, chương trình đã được viết sẵn. III. HOẠT ĐỘNG DẠY-HỌC Hoạt động : Rèn luyện kĩ năng nhận xét, phân tích và đề xuất cách giải bài toán sao cho chương trình chạy nhanh hơn. HOẠT ĐỘNG CỦA GIÁO VIÊN - Chiếu đề bài lên bảng. Cho mảng A gồm n phần tử. Hãy viết chương trình tạo mảng B [1..n], trong đó B[i] là tổng của i phần tử đầu tiên của A. HOẠT ĐỘNG CỦA HỌC SINH Quan sát đề bài và tả lời câu hỏi. - Yêu cầu: Xác định dữ liệu vào, dữ - Vào: Mảng A gồm n phần tử. liệu ra? - Ra: Mảng B gồm n phần tử với B[i] là tổng của i phần tử đầu tiên của A. - Gợi ý để học sinh đề xuất ý tưởng - Tại vị trí i ta tính tổng giá trị các xây dựng thuật toán. phần tử từ 1 đến i. Giới thiệu chương trình chưa cải tiến. Quan sát chương trình trên bảng. - Chiếu chương trình diễn đạt thuật - Quan sát giáo viên thực hiện, nhận toán. xét về thời gian thực hiện chương trình. - Thực hiện chương trình để học sinh biết thời gian thực hiện chương trình và kết quả của chương trình. - Phải thực hiện n(n+1)/2 phép cộng. - Hỏi: Trong chương trình phải thực hiện bao nhiêu phép cộng? - Hỏi: Có cách nào để cải tiến? - Để tính phần tử thứ i của mảng B ta sử dụng kết quả đã tính ở phần tử thứ HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH thứ i-1. B[i]:=B[i-1]+A[i]; - Thay đoạn lệnh - Lệnh này được thay lệnh nào For j:=1 to i do B[i]:=B[i]+A[j]; trong chương trình? Viết ở vị trí nào? Soạn chương trình vào máy, thực hiện chương trình và thông báo kết - Yêu cầu: Viết chương trình hoàn quả. thiện. - Nhận xét về thời gian thực hiện của Tiểu kết: Cùng một bài toán, có chương trình này so với chương trình nhiều cách giải quyết khác nhau. trước khi cải tiến. Người lập trình cần chọn cách sao cho máy thực hiện nhanh nhất. Dành thời gian còn lại để học sinh thực hành. IV. TỔNG KẾT: - Giáo viên củng cố lại những nội dung đã học: - Thuật toán sắp xếp đơn giản. - Một bài toán có thể có nhiều cách viết thành một chương trình. Cần chọn cách có số phép tính ít nhất để tiết kiệm thời gian chạy chương trình.. - Yêu cầu học sinh về nhà tiếp tục rèn luyện kỹ năng thực hành, xem trước nội dung bài 12 – KIỂU XÂU. ... thuật toán có số lần thực phép tính - Yêu cầu học sinh xem trước phần lại thực hành - Làm tập đề cương để chuẩn bị cho tiết thực hành sau TiÓt 26 Ngµy so¹n: 20/11/2010 BÀI THỰC HÀNH SỐ 4( T2) I MỤC... nhân - Yêu cầu học sinh nhập liệu vào - Nhập liệu theo yêu cầu giáo giáo viên thông báo kết viên, thực chương trình thông báo kết sau thực - Tiếp cận học sinh thực hành giúp đỡ học sinh yếu -... thuật - Quan sát giáo viên thực hiện, nhận toán xét thời gian thực chương trình - Thực chương trình để học sinh biết thời gian thực chương trình kết chương trình - Phải thực n(n+1)/2 phép cộng -

Ngày đăng: 13/10/2015, 17:13

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

Tài liệu liên quan