I. MỤC TIÊU BÀI HỌC:
1. Kiến thức
- Hiểu được khái niệm mảng một chiều.
- Hiểu cách khai báo mảng một chiều.
- Cài đặt đựơc thuật toán của một số bài toán đơn giản với kiểu dữ liệu mảng một chiều.
- Thực hiện được khai báo mảng, truy cập, tính toán các phần tử của mảng
2. Kĩ năng
- Khai báo thành thạo mảng một chiều.
- Truy cập các phần tử của mảng
3. Thái độ: Nghiêm túc, chăm chỉ
4. Phát triển năng lực:
- Phát triển năng lực tự học, tư duy logic, sáng tạo của học sinh trong môn tin học lập trình pascal
II. PHƯƠNG PHÁP DẠY HỌC TRÊN LỚP:
- Phương pháp thuyết trình, pháp vấn, giải quyết vấn đề, hoạt động nhóm
Chương IV: KIỂU DỮ LIỆU CÓ CẤU TRÚC Tiết 20: KIỂU MẢNG I. MỤC TIÊU BÀI HỌC: 1. Kiến thức - Hiểu được khái niệm mảng một chiều. - Hiểu cách khai báo mảng một chiều. - Cài đặt đựơc thuật toán của một số bài toán đơn giản với kiểu dữ liệu mảng một chiều. - Thực hiện được khai báo mảng, truy cập, tính toán các phần tử của mảng 2. Kĩ năng - Khai báo thành thạo mảng một chiều. - Truy cập các phần tử của mảng 3. Thái độ: Nghiêm túc, chăm chỉ 4. Phát triển năng lực: - Phát triển năng lực tự học, tư duy logic, sáng tạo của học sinh trong môn tin học lập trình pascal II. PHƯƠNG PHÁP DẠY HỌC TRÊN LỚP: Phương pháp thuyết trình, pháp vấn, giải quyết vấn đề, hoạt động nhóm III. CHUẨN BỊ CỦA GV & HS 1. Chuẩn bị của giáo viên: Máy tính, máy chiếu. 2. Chuẩn bị của học sinh: SGK, đọc trước bài học. IV. TIẾN TRÌNH LÊN LỚP: 1. Kiểm tra bài cũ: 2. Bài mới: 2.1 Hoạt động khởi động Bài toán ví dụ: Chương trình giải quyết bài toán có thể viết như sau : Program NhietdoTuan; Var t1,t2,t3,t4,t5,t6,t7,tb: Real; dem : integer; Begin Writeln ('Nhap vao nhiet do cua 7 ngay : '); Readln(t1,t2,t3,t4,t5,t6,t7); tb := (t1+t2+t3+t4+t5+t6+t7)/7; dem:= 0; if t1>tb then dem:= dem+1; if t2>tb then dem:= dem+1; if t3>tb then dem:= dem+1; if t4>tb then dem:= dem+1; if t5>tb then dem:= dem+1; if t6>tb then dem:= dem+1; if t7>tb then dem:= dem+1; WriteLn ('Nhiet do trung binh tuan : ',tb); WriteLn ('So ngay nhiet do cao hon trung binh : ',dem); ReadLn End. 2.2 Hình thành kiến thức mới. (1) Mục tiêu: Học sinh có mong muốn tìm hiểu về mảng một chiều, cách khái báo mảng một chiều, cách nhập và in mảng một chiều. (2) Phương pháp/kĩ thuật dạy học: Nêu và giải quyết vấn đề. (3) Hình thức tổ chức hoạt động: Làm việc cá nhân, thảo luận nhóm. (4) Phương tiện dạy học: SGK, Projector, máy tính, bảng phụ. (5) Kết quả: Học sinh biết thế nào là mảng một chiều, cách khai báo biến mảng một chiều, hiểu cách nhập và in mảng một chiều, hiểu được một số ví dụ giải bài toán về mảng một chiều. Nội dung hoạt động Hoạt động giáo viên Hoạt động học sinh Nội dung (?) Mảng một chiều là gì? - Nhận xét, chốt nội dung. - Đưa ra một số ví dụ. (?) Khi làm việc với mảng một chiều cần xác định những gì? - Nhận xét, chốt nội dung. - Đưa ra một số ví dụ. (?) Với mảng một chiều vừa cho ta xác định được gì? - Nhận xét. - Tóm tắt nội dung phần khái niệm và dẫn dắt vào phần 1a). - Tham khảo SGK và trả lời. - Lắng nghe, ghi bài. - Quan sát, ghi chú. - Tham khảo SGK và trả lời. - Lắng nghe, ghi bài. - Quan sát, ghi bài. - Suy nghĩ trả lời. - Ghi nhớ. - Lắng nghe, ghi nhớ. Kiểu mảng một chiều Mảng một chiều là một dãy hữu hạn các phần tử cùng kiểu. Mảng được đặt tên và mỗi phần tử của dãy sẽ có một chỉ số. * Khi làm việc với mảng một chiều ta cần xác định được: + Tên mảng; + Số lượng phần tử; + Kiểu dữ liệu của phần tử; + Cách khai báo biến mảng; + Cách tham chiếu đến một phần tử. Ví du: A 5 8 7 1 Chỉ số 1 2 3 4 + Tên mảng: A + Số lượng phần tử: 4 + Kiểu dữ liệu: Số nguyên + Tham chiếu đến PT thứ 3, ta viết A[3]. (?) Có mấy cách khai báo mảng một chiều ? - Nhận xét, chốt nội dung. (?) Cú pháp khai báo trực tiếp? - Nhận xét, chốt nội dung. - Cho ví dụ. (?) Cú pháp khai báo gián tiếp? - Nhận xét, chốt nội dung. - Cho ví dụ. (?) Khai báo mảng B có tối đa 50 phần tử kiểu nguyên (sử dụng cả hai cách). - Treo kết quả của một nhóm làm nhanh nhất và một nhóm bất kỳ. - Nhận xét, cộng điểm. - Giải thích ví dụ rõ để học sinh phân biệt tên kiểu mảng, tên biến mảng. - Tóm tắt nội dung phần 1a) và dẫn dắt vào phần 1b). - Tham khảo SGK và trả lời. - Lắng nghe. - Tham khảo SGK và trả lời. - Lắng nghe, ghi bài. - Quan sát, ghi bài. - Tham khảo SGK và trả lời. - Lắng nghe, ghi bài. - Quan sát, ghi bài. - Làm việc nhóm. - Quan sát, nhận xét. - Nghe giảng. - Lắng nghe, ghi nhớ. a) Khai báo * Cách 1. Khai báo trực tiếp VAR : array[] of ; - Ví dụ: Khai báo mảng A có tối đa 10 phần tử kiểu thực. VAR A: array[1..10] of real; * Cách 2. Khai báo gián tiếp TYPE = array[..] of ; VAR : ; - Ví dụ: Khai báo mảng A có tối đa 10 phần tử kiểu thực. TYPE mang = array[1..10] of real; VAR a: mang; - Giới thiệu có hai thao tác cơ bản khi làm việc với mảng một chiều. (?) Muốn nhập mảng một chiều đầu tiên ta cần xác định cái gì? - Nhận xét và (?) sử dụng lệnh gì để nhập số lượng phần tử? - Nhận xét, chốt nội dung. (?) Giá trị của từng phần tử mảng xác định được chưa, làm thế nào để có các giá trị đó? - Nhận xét, chốt nội dung. (?) Dùng lệnh gì để in mảng một chiều? - Sử dụng chương trình đã chuẩn bị trước để minh họa cho học sinh quan sát. - Tóm tắt nội dung phần 1b). - Lắng nghe, ghi nhớ. - Tham khảo SGK trang 56 và trả lời. - Lắng nghe, gợi nhớ và trả lời. - Lắng nghe, ghi bài. - Tham khảo SGK trang 56 và suy nghĩ trả lời. - Lắng nghe, ghi bài. - Gợi nhớ và trả lời. - Quan sát. b) Các thao tác trên mảng một chiều * Nhập mảng một chiều - Trước tiên, cần xác định có bao nhiêu phần tử cần dùng: Write(‘nhap so luong ptu: ’); Readln(n); - Dùng vòng lặp For - do để nhập giá trị cho từng phần tử A[i]: For i:=1 to n do Begin Write(‘Nhap ptu thu: ’, i); Readln(A[i]); End; * In mảng một chiều Dùng vòng lặp For - do để in các phần tử trong mảng: For i:= 1 to n do Write(A[i]); 2.3. Hoạt động luyện tập, vận dụng (1) Mục tiêu: Giúp học sinh thực hiện được thao tác tạo khai báo, nhập và in mảng một chiều (2) Phương pháp/kĩ thuật dạy học: Nêu và giải quyết vấn đề (3) Hình thức tổ chức hoạt động: Làm việc nhóm. (4) Phương tiện dạy học: SGK, Projector, máy tính, bảng phụ. (5) Kết quả: Học sinh biết vận dụng kiến thức đã học vào giải quyết tình huống thực tiễn cụ thể. Nội dung hoạt động Hoạt động của giáo viên Hoạt động cuả học sinh Nội dung (?) Chiếu nội dung bài tập. - Treo kết quả của nhóm làm nhanh nhất và một nhóm bất kỳ. - Nhận xét, cộng điểm - Quan sát, thảo luận nhóm và viết bài làm vào bảng phụ. - Quan sát, nhận xét. - Lắng nghe và quan sát. Cho khai báo biến mảng sau Var A: array[1..100] of integer; - Em hãy cho biết: + Mảng tên gì? + Được nhập tối đa bao nhiêu phần tử cho mảng? + Các giá trị phần tử có kiểu dữ liệu gì? +Cách khai báo trên là trực tiếp hay gián tiếp? 2.4. Vận dụng mở rộng (1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình. (2) Phương pháp/kĩ thuật dạy học: Làm việc cá nhân, nhóm. (3) Hình thức tổ chức hoạt động: Ngoài lớp học (4) Phương tiện dạy học: SGK, máy tính. (5) Kết quả: Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể. Nội dung hoạt động Viết chương trình nhập dãy N số nguyên (tối đa 50 phần tử). In giá trị phần tử cuối và đầu của dãy số. Xem trước các ví dụ ở SGK trang 56, 57 ..$$............................. CHƯƠNG IV. KIỂU DỮ LIỆU CÓ CẤU TRÚC Tiết 21 §11. KIỂU MẢNG (tiếp theo) I. MỤC TIÊU 1. Về kiến thức - Hiểu khái niệm mảng một chiều. - Hiểu cách khai báo và truy cập đến các phần tử của mảng. 2. Về kĩ năng - Cài đặt được thuật toán giải một số bài toán đơn giản với kiểu dữa liệu mảng một chiều. - Thực hiện khai báo mảng, truy cập, tính toán, đếm các phần tử trong mảng. 3. Về thái độ - Thái độ nghiêm túc trong học tập. - Chủ động tìm hiểu kiến thức mới. 4. Phát triển năng lực: - Phát triển năng lực tự học, tư duy logic, sáng tạo của học sinh trong môn tin học lập trình pascal II. PHƯƠNG PHÁP DẠY HỌC TRÊN LỚP: Phương pháp thuyết trình, pháp vấn, giải quyết vấn đề, hoạt động nhóm III. CHUẨN BỊ CỦA GV & HS 1. Chuẩn bị của giáo viên: Máy tính, máy chiếu. 2. Chuẩn bị của học sinh: SGK, đọc trước bài học. IV. TIẾN TRÌNH LÊN LỚP: 1. Kiểm tra bài cũ: Viết khai báo trực tiếp biến mảng? Khai báo mảng 100 số thực. Var : array[ Kiểu chỉ số] of ; Var A : array[1..100] of Real 2. Bài mới: 2.1. Hoạt động khởi động (1) Mục tiêu: Giúp học sinh hệ thống lại kiến thức của phần 1a, b đồng thời tạo động cơ để HS có nhu cầu vận dụng các kiến thức đã học để hiểu rõ hơn về các ví dụ. (2) Phương pháp/kĩ thuật dạy học: Nêu và giải quyết vấn đề. (3) Hình thức tổ chức hoạt động: Làm việc cá nhân. (4) Phương tiện dạy học: SGK, Projector, máy tính. (5) Kết quả: Học sinh trả lời được các câu hỏi của GV. Nội dung hoạt động Hoạt động của giáo viên Hoạt động cuả học sinh Nội dung (?) Khai báo dãy C gồm 20 phần tử kiểu kí tự? - Nhận xét, cho điểm. (?) Hãy cho biết với dãy số trên. + Mảng tên gì? + Được nhập tối đa bao nhiêu phần tử cho mảng? + Các giá trị phần tử có kiểu dữ liệu gì? + Cách khai báo trên là trực tiếp hay gián tiếp? - Nhận xét, cho điểm. - Tóm tắt nội dung phần 1a, b và dẫn dắt vào phần ví dụ. - Lên bảng viết đáp án. - Lắng nghe và quan sát. - Suy nghĩ, gợi nhớ, trả lời. - Lắng nghe và quan sát. 2.2. Hình thành kiến thức 2.3. Hoạt động luyện tập, vận dụng (1) Mục tiêu: Giúp học sinh hiểu được thao tác khai báo, nhập và in mảng một chiều (2) Phương pháp/kĩ thuật dạy học: Nêu và giải quyết vấn đề (3) Hình thức tổ chức hoạt động: Làm việc nhóm. (4) Phương tiện dạy học: SGK, Projector, máy tính, bảng phụ. (5) Kết quả: Học sinh biết vận dụng kiến thức đã học để giải thích các bài toán cụ thể trong thực tế. Nội dung hoạt động Hoạt động giáo viên Hoạt động học sinh Nội dung - Chiếu ví dụ 1. (?) Xác định bài toán? - Nhận xét, chốt nội dung và giải thích chi tiết bài toán bằng ví dụ cụ thể. (?) Giải thích thuật toán? - Nhận xét, chốt nội dung. (?) Hãy cho biết với dãy số trên. + Mảng tên gì? + Được nhập tối đa bao nhiêu phần tử cho mảng? + Các giá trị phần tử có kiểu dữ liệu gì? + Cách khai báo trên là trực tiếp hay gián tiếp? - Nhận xét, cho điểm. (?) Câu lệnh dùng để khai báo dãy số? - Nhận xét, cộng điểm. (?) Câu lệnh dùng để nhập số lượng phần tử của dãy số? - Nhận xét, cộng điểm. (?) Câu lệnh dùng để nhập giá trị các phần tử của dãy số? - Nhận xét, cộng điểm. (?) Điều kiện để tìm ra vị trí và giá trị của phẩn tử lớn nhất? - Nhận xét, cộng điểm. - Chạy chương trình để HS quan sát. - Tóm tắt nội dung ví dụ 1 và dẫn dắt vào ví dụ 2 - Chiếu ví dụ 2 và (?) HS giải thích. - Chạy chương trình để HS quan sát. - Chiếu ví dụ 3 và (?) Xác định bài toán? - Nhận xét, cộng điểm. (?) Thảo luận nhóm và đưa ra thuật toán. - Treo kết quả của hai nhóm. - Nhận xét, chốt nội dung, cộng điểm. (?) Thảo luận nhóm và hoàn chỉnh chương trình. - Treo kết quả của hai nhóm. - Nhận xét, chốt nội dung, cộng điểm. - Chạy chương trình. - Tóm tắt nội dung tiết học. - Quan sát. - Tham khảo SGK và trả lời. - Lắng nghe, ghi bài. - Gợi nhớ và giải thích thuật toán. - Lắng nghe, ghi bài. - Gợi nhớ và trả lời. - Quan sát, ghi bài. - Quan sát, trả lời. - Lắng nghe, ghi nhớ. - Quan sát, trả lời. - Lắng nghe, ghi nhớ. - Quan sát, trả lời. - Lắng nghe, ghi nhớ. - Quan sát, trả lời. - Lắng nghe, ghi nhớ. - Quan sát, ghi nhớ. - Lắng nghe, ghi nhớ. - Quan sát, giải thích. - Quan sát, ghi chú. - Quan sát, trả lời. - Quan sát. - Thảo luận nhóm. - Quan sát và nhận xét. - Lắng nghe, ghi bài. - Thảo luận nhóm. - Quan sát và nhận xét. - Lắng nghe, ghi bài. - Quan sát. - Lắng nghe, ghi nhớ. 3. Một số ví dụ Ví dụ 1: Tìm phẩn tử lớn nhất của dãy số nguyên. - Input: Số nguyên dương N và dãy gồm N sô nguyên dương a1, a2, , an. - Output: Max(a1, a2, , an), chỉ số Max. Thuật toán: B1: Nhập N, và dãy a1, a2, , an. B2: Max ç a1; i ç 2; B3: Nếu i > N thì đưa ra Max, rồi kết thúc; B4: Nếu ai > Max thì Max ç ai; i ç i + 1 rồi quay lại B3. * Chương trình Var a: array[1..250] of integer; N, i, Max, csmax: integer; Begin Write(‘Nhap so phan tu cua day so, N=’); Readln(N); For i:=1 to N do Begin Write(‘Phan tu thu ‘, i, ‘ =’); Readln(A[i]); End; Max:=A[1]; csmax:=1; For i:=2 to N do If A[i] > Max then Begin Max := A[i]; csMax := i; End; writeln(‘Gia tri cua p.tu max la:’, max); writeln(‘Chi so cua p.tu max la:’, max); Readln; End. Ví dụ 2: Sắp xếp dãy số thành dãy không giảm. Ví dụ 3: Viết chương trình nhập từ bàn phím số nguyên dương N (N<=100) và dãy A gồm N số nguyên A1, A2, AN. Tìm và in ra màn hình giá trị nhỏ nhất của dãy số vừa nhập? - Input: Số nguyên dương N và dãy gồm N sô nguyên dương a1, a2, , an. - Output: Phần tử min của dãy số. Thuật toán: B1: Nhập N, và dãy a1, a2, , an. B2: Min:= a1; i:= 2; B3: Nếu i > N thì đưa ra Min, rồi kết thúc; B4: Nếu ai < Min thì Min:= ai; i:= i + 1 rồi quay lại B3. * Chương trình Var A: Array[1..100] of integer; min, n, i: integer; Begin Writeln('nhap sl ptu n: '); Readln(n); For i:=1 to n do Begin Writeln('nhap ptu thu ', i); Readln(A[i]); End; Min:=a[1]; For i:=2 to n do If a[i]<min then min:=a[i]; Writeln(‘Gia tri nho nhat la ', min); Readln ; End. 2.4 Vận dụng mở rộng (1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình. (2) Phương pháp/kĩ thuật dạy học: Làm việc cá nhân, nhóm. (3) Hình thức tổ chức hoạt động: Ngoài lớp học (4) Phương tiện dạy học: SGK, máy tính. (5) Kết quả: Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể. Nội dung hoạt động Bài 1: Viết chương trình nhập từ bàn phím số nguyên dương N (N<=100) và dãy A gồm N số nguyên A1, A2, AN. Tìm và in ra màn hình các phần tử chia hết cho 3? Bài 2: Viết chương trình nhập vào một mảng gồm n số nguyên (1<=n<= 100), mỗi số có giá trị tuyệt đối không quá 300. Tính tổng giá trị các phần tử có giá trị chia hết cho k? ............................&&&....................... Tiết 22 BÀI TẬP VÀ THỰC HÀNH 3 I. MỤC TIÊU 1. Về kiến thức Biết các thao tác nhập xuất mảng một chiều, chạy thử một số chương trình có sẵn. Giải được một số bài toán tính toán đơn giản. 2. Về kĩ năng Thực hiện đúng các thao tác từ khai báo đến nhập xuất mảng một chiều. 3. Về thái độ Thái độ nghiêm túc trong học tập. 4. Năng lực hướng tới: Giải quyết vấn đề, sử dụng công nghệ thông tin giải các bài toán đơn giản. II. PHƯƠNG PHÁP DẠY HỌC TRÊN LỚP: Phương pháp giải quyết vấn đề, hoạt động nhóm III. CHUẨN BỊ CỦA GV & HS 1. Chuẩn bị của giáo viên: Máy tính, máy chiếu. 2. Chuẩn bị của học sinh: SGK, bài tập đã giao. IV. TIẾN TRÌNH LÊN LỚP: 1. Kiểm tra bài cũ: 2. Bài mới: 2.1. Hoạt động khởi động (1) Mục tiêu: Giúp học sinh hệ thống lại kiến thức của bài 11 và có nhu cầu tìm hiểu các nội dung bài tập và thực hành 3. (2) Phương pháp/kĩ thuật dạy học: Nêu và giải quyết vấn đề. (3) Hình thức tổ chức hoạt động: Làm việc cá nhân, thảo luận nhóm. (4) Phương tiện dạy học: SGK, Projector, máy tính. (5) Kết quả: Học sinh trả lời được các câu hỏi của trò chơi ô chữ và mong muốn tìm hiểu các nội dung bài tập và thực hành 3. Nội dung hoạt động - GV: Nhận xét, cho điểm các nhóm trả lời đúng. - GV: Dẫn dắt vào bài tập và thực hành 3. - HS: Lắng nghe, ghi nhớ. 2.2.Hình thành kiến thức 2.3. Hoạt động luyện tập, vận dụng: (1) Mục tiêu: Giúp học sinh giải được các bài toán về kiểu mảng (2) Phương pháp/kĩ thuật dạy học: Nêu và giải quyết vấn đề. (3) Hình thức tổ chức hoạt động: Làm việc nhóm trên máy tính. (4) Phương tiện dạy học: SGK, Projector, máy tính. (5) Kết quả: Học sinh chạy và sửa lỗi được các chương trình về kiểu mảng Nội dung hoạt động Hoạt động giáo viên Hoạt động học sinh Nội dung - Chiếu lại bài tập 1 và yêu cầu học sinh gõ vào máy tính. (?) Nhắc lại các bước giải bài toán trên máy tính. - Nhắc học sinh thực hiện đúng các bước (gõ, lưu, sửa, lưu, chạy). - Quan sát HS viết chương trình và giải đáp một số thắc mắc của HS. - Cộng điểm cho các nhóm làm nhanh và có các câu hỏi hay. - Chiếu lại bài tập 2 và yêu cầu học sinh gõ vào máy tính. - Quan sát HS viết chương trình và giải đáp một số thắc mắc của HS. - Cộng điểm cho các nhóm làm nhanh và có các câu hỏi hay. - Tóm tắt nội dung tiết học. - Quan sát, gõ chương trình vào máy tính. - Gợi nhớ và trả lời. - Lắng nghe và thực hiện thao tác. - Viết chương trình và gửi những thắc mắc đến GV. - Lắng nghe, ghi chú. - Quan sát, gõ chương trình vào máy tính. - Viết chương trình và gửi những thắc mắc đến GV. - Lắng nghe, ghi chú. - Lắng nghe, ghi nhớ. Bài tập 1: Viết chương trình nhập từ bàn phím số nguyên dương N (N<=100) và dãy A gồm N số nguyên A1, A2, AN. Tìm và in ra màn hình các phần tử chia hết cho 3? * Chương trình Var A: array[1..100] of integer; n, i: integer; Begin Writeln('nhap vao n'); Readln(n); For i:=1 to n do Begin Writeln('nhap vao phan tu thu ', i); Readln(A[i]); End; Writeln(‘Cac so chia het cho 3 la:’) For i:=1 to n do If A[i] mod 3=0 then Write(a[i]); Readln; End. Bài tập 2: Viết chương trình nhập từ bàn phím số nguyên dương N (N<=100) và dãy A gồm N số nguyên A1, A2, AN. Tìm và in ra màn hình các phần tử dương chẵn. * Chương trình Var A: array[1..100] of integer; n, i: integer; Begin Writeln('nhap vao n'); Readln(n); For i:=1 to n do Begin Writeln('nhap vao phan tu thu ', i); Readln(A[i]); End; Writeln(‘Cac pt duong chan:’) For i:=1 to n do If (A[i] >0) and (A[i] mod 2 = 0) then Write(a[i], ‘ ’); Readln; End. 2.4 Hoạt động vận dụng mở rộng: (1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình. (2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm. (3) Hình thức tổ chức hoạt động: Ngoài lớp học (4) Phương tiện dạy học:SGK, Projector, máy tính. (5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể. Nội dung hoạt động Viết chương trình nhập dãy N số nguyên (N<=200). Tính và in ra tổng các số dương. Tiết 23 BÀI TẬP VÀ THỰC HÀNH 3 I. MỤC TIÊU 1. Về kiến thức Biết các thao tác nhập xuất mảng một chiều, chạy thử một số chương trình có sẵn. Giải được một số bài toán tính toán đơn giản. 2. Về kĩ năng Thực hiện đúng các thao tác từ khai báo đến nhập xuất mảng một chiều. 3. Về thái độ Thái độ nghiêm túc trong học tập. 4. Năng lực hướng tới: Giải quyết vấn đề, sử dụng công nghệ thông tin giải các bài toán đơn giản. II. PHƯƠNG PHÁP DẠY HỌC TRÊN LỚP: Phương pháp giải quyết vấn đề, hoạt động nhóm III. CHUẨN BỊ CỦA GV & HS 1. Chuẩn bị của giáo viên: Máy tính, máy chiếu. 2. Chuẩn bị của học sinh: SGK, bài tập đã giao. IV. TIẾN TRÌNH LÊN LỚP: 1. Kiểm tra bài cũ: 2. Bài mới: 2.1. Hoạt động khởi động (1) Mục tiêu: Giúp học sinh hệ thống lại kiến thức của bài 11 và có nhu cầu tìm hiểu các nội dung bài tập và thực hành 3. (2) Phương pháp/kĩ thuật dạy học: Nêu và giải quyết vấn đề. (3) Hình thức tổ chức hoạt động: Làm việc cá nhân, thảo luận nhóm. (4) Phương tiện dạy học: SGK, Projector, máy tính. (5) Kết quả: Học sinh trả lời được các câu hỏi của trò chơi ô chữ và mong muốn tìm hiểu các nội dung bài tập và thực hành 3. Nội dung hoạt động - GV: Nhận xét, cho điểm các nhóm trả lời đúng. - GV: Dẫn dắt vào bài tập và thực hành 3. - HS: Lắng nghe, ghi nhớ. 2.2.Hình thành kiến thức 2.3. Hoạt động luyện tập, vận dụng: (1) Mục tiêu: Giúp học sinh giải được các bài toán về kiểu mảng (2) Phương pháp/kĩ thuật dạy học: Nêu và giải quyết vấn đề. (3) Hình thức tổ chức hoạt động: Làm việc nhóm trên máy tính. (4) Phương tiện dạy học: SGK, Projector, máy tính. (5) Kết quả: Học sinh chạy và sửa lỗi được các chương trình về kiểu mảng Nội dung hoạt động Hoạt động giáo viên Hoạt động học sinh Nội dung - Chiếu lại bài tập 1 và yêu cầu học sinh gõ vào máy tính. (?) Nhắc lại các bước giải bài toán trên máy tính. - Nhắc học sinh thực hiện đúng các bước (gõ, lưu, sửa, lưu, chạy). - Quan sát HS viết chương trình và giải đáp một số thắc mắc của HS. - Cộng điểm cho các nhóm làm nhanh và có các câu hỏi hay. - Chiếu lại bài tập 2 và yêu cầu học sinh gõ vào máy tính. - Quan sát HS viết chương trình và giải đáp một số thắc mắc của HS. - Cộng điểm cho các nhóm làm nhanh và có các câu hỏi hay. - Tóm tắt nội dung tiết học. - Quan sát, gõ chương trình vào máy tính. - Gợi nhớ và trả lời. - Lắng nghe và thực hiện thao tác. - Viết chương trình và gửi những thắc mắc đến GV. - Lắng nghe, ghi chú. - Quan sát, gõ chương trình vào máy tính. - Viết chương trình và gửi những thắc mắc đến GV. - Lắng nghe, ghi chú. - Lắng nghe, ghi nhớ. Bài tập 1: Viết chương trình nhập từ bàn phím số nguyên dương N (N<=100) và dãy A gồm N số nguyên A1, A2, AN. Tìm và in ra màn hình các phần tử chia hết cho 3? * Chương trình Var A: array[1..100] of integer; n, i: integer; Begin Writeln('nhap vao n'); Readln(n); For i:=1 to n do Begin Writeln('nhap vao phan tu thu ', i); Readln(A[i]); End; Writeln(‘Cac so chia het cho 3 la:’) For i:=1 to n do If A[i] mod 3=0 then Write(a[i]); Readln; End. Bài tập 2: Viết chương trình nhập từ bàn phím số nguyên dương N (N<=100) và dãy A gồm N số nguyên A1, A2, AN. Tìm và in ra màn hình các phần tử dương chẵn. * Chương trình Var A: array[1..100] of integer; n, i: integer; Begin Writeln('nhap vao n'); Readln(n); For i:=1 to n do Begin Writeln('nhap vao phan tu thu ', i); Readln(A[i]); End; Writeln(‘Cac pt duong chan:’) For i:=1 to n do If (A[i] >0) and (A[i] mod 2 = 0) then Write(a[i], ‘ ’); Readln; End. 2.4 Hoạt động vận dụng mở rộng: (1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình. (2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm. (3) Hình thức tổ chức hoạt động: Ngoài lớp học (4) Phương tiện dạy học:SGK, Projector, máy tính. (5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể. Nội dung hoạt động Viết chương trình nhập dãy N số nguyên (N>=300). Tính và in ra tổng các số dương.
Tài liệu đính kèm: