Giáo án Tin học Lớp 8 - Tuần 22 - Năm học 2017-2018
I. Mục tiêu bài học:
1. Kiến thức, kĩ năng, thái độ
* Kiến thức: Củng cố kiến thức vòng lặp với số lần biết trước và câu lệnh ghép
* Kỹ năng: Vận dụng vòng lặp for .to.do và câu lệnh ghép viết một số bài toán đơn giản.
* Thái độ: Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng.
2. Năng lực có thể hình thành và phát triển cho học sinh:
- Hình thành khả năng hoạt động nhóm trao đổi tìm ra kiến thức
- Hình thành năng lực chủ động, tự điều khiển trong hoạt động học
- Hình thành năng lực giải quyết vấn đề và sáng tạo, năng lực khoa học máy tính cơ bản
II. Chuẩn bị về tài liệu và phương tiện dạy học:
- GV: SGK, giáo án, tài liệu tin học có liên quan, phòng máy tính, máy chiếu.
- HS: Đọc tài liệu ở nhà trước khi lên lớp, Vở ghi, SGK
III. Tổ chức hoạt động học của học sinh:
1. Hoạt động dẫn dắt vào bài:
2. Kiểm tra 15 phút
Đề 1:
A. Trắc nghiệm (5đ):
Câu 1: Cú pháp của câu lệnh lặp for . Do . là ?
A. If (điều kiện) then (câu lệnh);
B. For (biến đếm):=(giá trị đầu) to (giá trị cuối) do (câu lệnh);
C. Var n, i: interger;
D. For (biến đếm)=(giá trị đầu) to (giá trị cuối) do (câu lệnh);
Câu 2: for i:= 1 to 3.5 do writeln(i:3:1); sẽ viết ra màn hình?
A. Thứ tự của biến đếm, chiếm 3 chỗ và lấy 1 chữ số sau phần thập phân
B. Viết số 1 rồi viết số 3.5
C. Chỉ viết số 3.5 mà thôi
D. Không thực hiện được vì giá trị của biến đếm có kiểu thứ tự là Real
Câu 3: Các câu lệnh Pascal nào sau đây hợp lệ :
A. for i:=100 to 1 do writeln(‘A’) B. for i:= 1.5 to 10.5 do writeln(‘A’)
C. for i:=1 to 10 do writeln(‘A’); D. for i:= 1 to 10 do; writeln(‘A’)
Ngày soạn: 14/02/2018 Tuần: 22 Tiết: 43 BÀI TẬP I. Mục tiêu bài học: Kiến thức, kĩ năng, thái độ * Kiến thức: Củng cố kiến thức vòng lặp với số lần biết trước và câu lệnh ghép * Kyõ naêng: Vận dụng vòng lặp for ..to..do và câu lệnh ghép viết một số bài toán đơn giản. * Thaùi ñộ: Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng. 2. Năng lực có thể hình thành và phát triển cho học sinh: - Hình thành năng lực giải quyết vấn đề và sáng tạo, năng lực khoa học máy tính cơ bản: Vận dụng vòng lặp Forto..do vào làm các bài tập nâng cao hơn. II. Chuẩn bị về tài liệu và phương tiện dạy học: - GV: Sách giáo khoa, giáo án, tài liệu tin học có liên quan. - HS: Đọc tài liệu ở nhà trước khi III. Tổ chức hoạt động học của học sinh: Hoạt động dẫn dắt vào bài: 2. Kiểm tra bài cũ: đan xen trong quá trình làm bài tập. 3. Hoạt động hình thành kiến thức: HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG Hoạt động 1: GV: Đưa ra đề bài toán, yêu cầu học sinh nghiên cứu theo nhóm. - HS: Hoạt động theo nhóm tìm câu trả lời. - HS: Đại diện của hai nhóm trình bày kết quả của nhóm. - GV: Nhận xét kết quả cuối cùng. - GV: Đưa bài tập 2 lên bảng, yêu cầu một học sinh đứng tại chỗ trả lời. - HS: Một học sinh đứng tại chỗ trả lời bài tập 2. một học sinh khác đứng tại chỗ nhận xét. - GV: Kết luận kết quả của bài 2. - GV: GV: Đưa ra đề bài toán, yêu cầu học sinh nghiên cứu theo nhóm. - HS: Hoạt động theo nhóm tìm câu trả lời. - HS: Đại diện của hai nhóm trình bày kết quả của nhóm. - GV: Nhận xét. Bài 1: Trăm trâu trăm cỏ Trâu đứng ăn năm Trâu nằm ăn ba Trâu già ba con một bó. Hỏi có bao nhiêu con mỗi loại? Program TRAMTRAU_TRAMCO; Uses crt; Var td,tn,tg:integer; Begin Clrscr; Writeln(' TRAM TRAU TRAM CO:'); Writeln('----------------------------------'); Writeln('Trau dung Trau nam Trau gia'); For td:=0 to 20 do For tn:=0 to 33 do For tg:=0 to 100 do If ((5*td+3*tn+tg/3=100)and (td+tn+tg=100)) then Writeln(td:6, tn:12, tg:15); Readln; End. Bài 2: Vừa gà vừa chó Bó lại cho tròn 36 con 100 chân chẵn Hỏi có bao nhiêu con gà và bao nhiêu chó? var cho, ga:integer; begin for cho:=1 to 24 do begin ga:= 36 - cho; if cho*4 + ga*2 =100 then write('so cho:',cho:3,' so ga:',ga:3);; end; readln end. 4. Hoạt động luyện tập - Giáo viên hệ thống lại toàn bộ nội dung bài học. - Giáo viên nhận xét tiết học, rút kinh nghiệm tiết học. 5. Hoạt động vận dụng: 6. Hoạt động tìm tòi, mở rộng - Học bài theo sách giáo khoa và vở ghi, Ôn lại các kiến thức chính đã học và luyện viết, làm đi làm lại nhiều lần. IV. RÚT KINH NGHIỆM: .. Ngày soạn: 14/02/2018 Tuần: 22 Tiết: 44 BÀI TẬP (tt) I. Mục tiêu bài học: Kiến thức, kĩ năng, thái độ * Kiến thức: Củng cố kiến thức vòng lặp với số lần biết trước và câu lệnh ghép * Kỹ năng: Vận dụng vòng lặp for ..to...do và câu lệnh ghép viết một số bài toán đơn giản. * Thái độ: Thái độ học tập nghiêm túc, tích cực làm các dạng bài tập ứng dụng. 2. Năng lực có thể hình thành và phát triển cho học sinh: - Hình thành khả năng hoạt động nhóm trao đổi tìm ra kiến thức - Hình thành năng lực chủ động, tự điều khiển trong hoạt động học - Hình thành năng lực giải quyết vấn đề và sáng tạo, năng lực khoa học máy tính cơ bản II. Chuẩn bị về tài liệu và phương tiện dạy học: - GV: SGK, giáo án, tài liệu tin học có liên quan, phòng máy tính, máy chiếu. - HS: Đọc tài liệu ở nhà trước khi lên lớp, Vở ghi, SGK III. Tổ chức hoạt động học của học sinh: Hoạt động dẫn dắt vào bài: 2. Kiểm tra 15 phút Đề 1: A. Trắc nghiệm (5đ): Câu 1: Cú pháp của câu lệnh lặp for. Do. là ? If (điều kiện) then (câu lệnh); For (biến đếm):=(giá trị đầu) to (giá trị cuối) do (câu lệnh); Var n, i: interger; For (biến đếm)=(giá trị đầu) to (giá trị cuối) do (câu lệnh); Câu 2: for i:= 1 to 3.5 do writeln(i:3:1); sẽ viết ra màn hình? Thứ tự của biến đếm, chiếm 3 chỗ và lấy 1 chữ số sau phần thập phân Viết số 1 rồi viết số 3.5 Chỉ viết số 3.5 mà thôi Không thực hiện được vì giá trị của biến đếm có kiểu thứ tự là Real Câu 3: Các câu lệnh Pascal nào sau đây hợp lệ : A. for i:=100 to 1 do writeln(‘A’) B. for i:= 1.5 to 10.5 do writeln(‘A’) C. for i:=1 to 10 do writeln(‘A’); D. for i:= 1 to 10 do; writeln(‘A’) Câu 4: Số vòng lặp trong câu lệnh lặp for (biến đếm):= (giá trị đầu) to (giá trị cuối) do (câu lệnh); ta luôn xác định được và bằng? A. Giá trị cuối + giá trị đầu +1 B. Giá trị cuối –biến đếm +1 C. Giá trị đầu + biến đếm -1 D. Giá trị cuối – giá trị đâu +1 Câu 5: Để chạy chương trình trong Pascal ta dùng tổ hợp phím : A) Ctrl + F7 B) Ctrl + F8 C) Ctrl + F9 D) Ctrl + F10 B. TỰ LUẬN (5đ) Câu 1: Đánh dấu [x] vào ô đúng hoặc sai tương ứng trong các câu lệnh Pascal sau nếu sai sửa lại? (2 điểm) Câu lệnh Đúng Sai Sửa lại for i:=1 to 10 do; x:=x+2; for i:=10 to1 do x:=x+2; for i:= 1 to 10 do x;=x+2; for i:= 1 to 5 do j:=j+1; i:=i+1; Câu 2: Hãy viết chương trình tính tổng của 20 số tự nhiên đầu tiên? (sử dụng vòng lặp fordo) (3 điểm) ĐÁP ÁN A. Trắc nghiệm: Câu 1 2 3 4 5 Đáp án B D C D C Mỗi ý đúng cho 1 điểm B. Tự luận Câu 1. Đánh dấu [x] vào ô đúng hoặc sai tương ứng trong các câu lệnh Pascal sau nếu sai sửa lại? 2đ Câu lệnh Đúng Sai Sửa lại for i:=1 to 10 do; x:=x+2; x for i:=1 to 10 do x:=x+2; for i:=10 to1 do x:=x+2; x for i:=1 to10 do x:=x+2; for i:= 1 to 10 do x =x+2; x for i:= 1 to 10 do x:=x+2; for i:= 1 to 5 do j:=j+1; i:=i+1; x for i:=1 to 5 do begin j:=j+1; i:=i+1; end; Mỗi ý đúng cho 0.5 điểm Câu 2: 3đ program ct; var S, i : integer; begin S:=0; i:=1; For i:=1 to 20 do S:=S+i; writeln(‘Tong cua 20 so tu nhien dau tien la =’,S) ; readln ; end. Đề 2: A. Trắc nghiệm (5đ): Câu 1: Đâu là công việc phải thực hiện nhiều lần với số lần biết trước? Hàng ngày em đi học. Em bị ốm vào một dịp có dịch cúm. Ngày đánh răng ba lần. Đến nhà bà ngoại chơi vào một hôm cả bố và mẹ đi vắng. Câu 2: Với ngôn ngữ lập trình Passcal câu lệnh lặp for i:=1 to 10 do x:=x+1; thì biến đếm i phải được khai báo là kiểu dữ liệu A. Interger; B. real; C. string D. tất cả các kiểu trên đều được Câu 3: Với câu lệnh for (biến đếm):= (giá trị đầu) to (giá trị cuối) do (câu lệnh); khi thực hiện ban đầu biến đếm nhận giá trị là 1 sau mỗi vòng lặp biến đếm tăng thêm? Một đơn vị B. hai đơn vị C. ba đơn vị D. bốn đơn vị Câu 4: Câu lệnh dạng for (biến đếm):= (giá trị cuối) to ( giá trị đầu) do (câu lệnh); điều kiện nào không hợp lệ? giá trị đầu nhỏ hơn giá trị cuối giá trị đầu lớn hơn giá trị cuối giá trị đầu, giá trị cuối là kiểu số nguyên Biến đếm tăng thêm 1 đơn vị Câu 5: Sau khi thực hiện đoạn chương trình j:= 0; for i:= 1 to 3 do j:=j+2; thì giá trị in ra màn hình là? A. 4 B. 6 C. 8 D.10 B. TỰ LUẬN (5đ) Câu 1: Đánh dấu [x] vào ô đúng hoặc sai tương ứng trong các câu lệnh Pascal sau nếu sai sửa lại? (2 điểm) Câu lệnh Đúng Sai Sửa lại for i:=100 to 1 do x:=x+2; for i:=1.5 to 10.5 do x:=x+2; for i= 1 to 10 do x:=x+2; for i:= 1 to 10 do; x:=x+2; Câu 2: Hãy viết chương trình tính hiệu của 20 số tự nhiên đầu tiên? (sử dụng vòng lặp fordo) (3 điểm) ĐÁP ÁN A. Trắc nghiệm: Câu 1 2 3 4 5 Đáp án C A A B B Mỗi ý đúng cho 1 điểm B. Tự luận Câu 1. Đánh dấu [x] vào ô đúng hoặc sai tương ứng trong các câu lệnh Pascal sau nếu sai sửa lại? 2đ Câu lệnh Đúng Sai Sửa lại A. for i:=100 to 1 do x:=x+2; x for i:=1 to 100 do x:=x+2; B. for i:=1.5 to 10.5 do x:=x+2; x for i:=1 to10 do x:=x+2; C. for i= 1 to 10 do x:=x+2; x for i:= 1 to 10 do x:=x+2; D. for i:= 1 to 10 do; x:=x+2; x for i:= 1 to 10 do x:=x+2; Mỗi ý đúng cho 0.5 điểm Câu 2: 3đ program tinhtich; var T, i : integer; begin T:=0; i:=1; For i:=1 to 20 do T:=T-i; writeln(‘Hieu cua 20 so tu nhien dau tien la =’,T) ; readln ; end. 3. Hoạt động hình thành kiến thức: HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG Hoạt động 1: Bài tập 1 Giáo viên đưa ra nội dung bài tập HS phân tích bài toán tìm hướng giải quyết. Gv: hướng dẫn học sinh cách làm và viết chương trình lên bảng và yêu cầu học sinh đọc hiểu. HS: đọc lại chương trình giáo viên đã viết trên bảng và tìm hiểu từng câu lệnh GV: yêu cầu một học sinh đứng tại vị trí diễn tả tuần tự ý nghĩa của chương trình thông qua diễn tả công việc của từng lệnh trong chương trình. GV: diễn tả lại một lần để học sinh hiểu sâu hơn về chương trình Hoạt động 2: Bài tập 2 ,3 Giáo viên đưa ra nội dung bài tập, HS phân tích bài toán tìm hướng giải quyết. - GV: Đưa ra công thức tính day thừa: Đại diện của nhóm đứng lên bảng trình bày kết quả. Các nhóm khác nhận xét, rút kinh nghiệm. GV: Kết luận kết quả cuối cùng. Yêu cầu một học sinh lên máy chính gõ chương trình vào máy, cả lớp sửa lỗi nếu có, cho chương trình chạy thử, học sinh quan sát kết quả. HS: chép lại chương trình đã chạy vào. Bài 1: Lập trình tính tích các số tự nhiên từ 1 tới 10 . GIẢI Var i : Byte ; (* chỉ số chạy *) p : word ; (* tích số *) BEGIN p := 1; (* cho giá trị ban đầu của tích *) For i := 1 to 10 Do (* cho i chạy từ 1 tới 10 *) p := p * i ; (* lần lượt nhân i với p *) Write (' 1 * 2 * ... * 10 = ', p ) ; Readln ; END . Bài 2 :Cho số tự nhiên n , hãy lập trình để tính các tổng sau : 1 + 1/22 + 1/32 + + 1/n2 1 + 1/2! + 1/3! + + 1/n! GIẢI a) Var n , i : Word ; S : Real ; BEGIN Write (' Nhap n : ') ; Readln (n) ; S := 0 ; For i := 1 To n Do S := S + 1 / sqr(i) ; Writeln (' S = ', S:0:2) ; Readln ; END . b) Var n , i , j , p : Word ; S : Real ; BEGIN Write (' Nhap n : ') ; Readln(n) ; p := 1 ; s := 0 ; For i :=1 To n Do Begin p := p * i ; (* tính i *) S := S + 1 / p ; End ; Writeln (' S = ', S:0:2) ; Readln ; END . Bài 3 : Tính giá trị của biểu thức sau : ( 1 + 1/12 ) ( 1 + 1/22 ) ( 1 + 1/n2 ) GIẢI Var i , n : Byte ; p : Real ; Begin Write(' Nhap n : ') ; Readln (n) ; p := 1 ; For i := 1 To n Do p := p * ( 1 + 1/sqr(i) ) ; Writeln(' p = ', p:10:5 ) ; Readln ; End. 4. Hoạt động luyện tập: Giáo viên hệ thống lại toàn bộ nội dung bài học. Nhấn mạnh ý nghĩa và công dụng, cách sử dụng vòng lặp for do Nhận xét, rút kinh nghiệm buổi học. 5. Hoạt động vận dụng: 6. Hoạt động tìm tòi, mở rộng Học bài theo sách giáo khoa và vở ghi, Ôn lại các kiến thức chính đã học và luyện viết, làm đi làm lại nhiều lần. - Về nhà xem trước bài mới. IV. RÚT KINH NGHIỆM: . .. . .. Khánh Hưng, ngày: 15/02/ 2018 Kí duyệt: Phạm Huy Bình
File đính kèm:
- giao_an_tin_hoc_lop_8_tuan_22_nam_hoc_2017_2018.doc