Giáo án tin học 8 Theo CKTKN đầy đủ

79 386 0
Giáo án tin học 8 Theo CKTKN đầy đủ

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trường THCS Hựu Thạnh Giáo án tin học 8 Tuaàn : 20 – Tieát 39,40 Ngày dạy : Bài 7: CÂU LỆNH LẶP. I/ Mục tiêu: • Biết nhu cầu cần có cấu trúc lặp trong ngôn ngữ lập trình. • Biết ngôn ngữ lập trình dùng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại công việc nào đó một số lần. • Hiểu hoạt động của câu lệnh với số lần biết trước for do trong Pascal. • Viết đúng được lệnh for do trong một số tình huống đơn giản. • Hiểu lệnh ghép trong Pascal • Thái độ nghiêm túc cẩn thận. II/ Chuẩn bị: • Gv: Tài liệu tin lớp 8 • HS: SGK tin 8, vở ghi III/ Tổ chức hoạt động dạy và học 1/Ổn định : 2. Kiểm tra bài cũ 3. Bài mới Hoạt động của GV Hoạt động của HS Hoạt động 1: Các công việc phải thực hiện nhiều lần GV: giới thiệu : Trong cuộc sống hằng ngày, nhiều hoạt động được thực hiện lặp đi lặp lại nhiều lần. ví dụ: - Các ngày trong tuần các em đều lặp đi lặp lại hoạt động buổi sáng đến trường và buổi trưa trở về nhà - Các em học bài thì phải đọc đi đọc lại nhiều lần cho đến khi thuộc bài. HS lắng nghe GV: Hãy cho thêm một vài ví dụ trong thực tế trong đời sống hằng ngày mà ta phải thực hiện các thao tác được lặp đi lặp nhiều lần? Hs cho ví dụ Gv: Khi viết chương trình máy tính cũng vậy, trong nhiều trường hợp ta cũng phải viết lặp lại nhiều câu lệnh chỉ để thực hiện 1 phép tính nhất định. HS lắng nghe 1. Các công việc phải thực hiện nhiều lần ( SGK) Hoạt động 2: Câu lệnh lặp – một lệnh thay cho nhiều lệnh Gv: Gọi 1 hs lên bảng vẽ một hình vuông cạnh 1 đơn vị độ dài (20cm) và yêu cầu cả lớp theo dõi bạn thực hiện các thao tác trên bảng. 2/ Câu lệnh lặp – một lệnh thay cho nhiều lệnh Giáo viên: Nguyễn Thị Thúy Liễu 1 Trường THCS Hựu Thạnh Giáo án tin học 8 HS: 1hs lên bảng vẽ, cả lớp theo dõi GV: Yêu cầu 1 hs mô tả các bước bạn vẽ trên bảng. Vậy khi bạn vẽ 1 hình vuông đã thực hiện bao nhiêu thao tác? (hs có thể chỉ trả lời 4 thao tác là vẽ 4 đoạn thẳng) HS: trả lời (4 thao tác) GV: Gợi ý thêm thao tác quay thước. Các thao tác đó như thế nào? HS: trả lời : Các thao tác giống nhau. Gv: Như vậy khi vẽ hình vuông có những thao tác lặp đi lặp lại. Thuật toán sau sẽ mô tả các bước để vẽ hình vuông. Gv: Mô tả thuật toán trên bảng Gv: Mô tả thuật toán tính tổng các số tự nhiên từ 1→ 100 GV: Cấu trúc mô tả thuật toán như trên gọi là cấu trúc lặp. Vd1: Thuật toán mô tả các bước để vẽ hình vuông. Bước 1: k ← 0 (k là số đoạn thẳng đã vẽ được). Bước 2: k ← k+1. Vẽ đoạn thẳng 1 đơn vị độ dài và quay thước 90 0 sang phải. Bước 3: Nếu k<4 thì quay lại bước 2; ngược lại kết thúc. • k là biến đếm Vd2: Thuật toán tính S= 1+2+3+ … + 100 Bước 1: S ← 0; i ← 0. Bước 2: i← i + 1 Bước 3: nếu i ≤ 100, thì S ← S + i và quay lại bước 2; ngược lại kết thúc. • i là biến đếm Mô tả thuật toán trên gọi là cấu trúc lặp. Mọi ngôn ngữ lập trình đều có cách chỉ thị cho máy tính thực hiện cấu trúc lặp chỉ với 1 câu lệnh. Đó là câu lệnh lặp Hoạt động3: Ví dụ về câu lệnh lặp Gv: minh họa bẳng ngôn ngữ Pascal cú pháp câu lệnh for … to … do HS: Quan sát, lắng nghe, ghi nhận • Lưu ý cho hs: - biến đếm là biến đơn có kiểu nguyên; - giá trị đầu và giá trị cuối là các biểu thức có cùng kiểu với biến đếm và giá trị cuối phải lớn hơn giá trị đầu; - câu lệnh có thể là câu lệnh đơn giản hay câu lệnh ghép. 3/ Ví dụ về câu lệnh lặp * Cú Pháp câu lệnh lặp với số lần biết trước trong Pascal: for<biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh> Trong đó: for, to, do là các từ khóa Vd 1: Chuong trình in ra màn hình thứ tự lần lặp. var i:integer; begin for i:= 1 to 20 do Giáo viên: Nguyễn Thị Thúy Liễu 2 Trường THCS Hựu Thạnh Giáo án tin học 8 GV: Cho hs nhận xét và so sánh sự khác nhau ở câu lệnh lặp trong hai vd trên? HS: Nhận xét Gv: Giải thích cho học tại sao vd2 trong câu lệnh lặp có begin … end HS: Quan sát, lắng nghe writeln(‘Day la lan lap thu’,i); readln; end. Vd2: chương trình ghi nhận vị trí 10 chữ O rơi từ trên xuống. ues crt; var i:integer; begin clrscr; for i:= 1 to 20 do begin writeln(‘O’); delay(200); end; readln; end. *Lưu ý: Câu lệnh có sử dụng câu lệnh ghép thì phải đặt trong hai từ khóa begin … end. Hoạt động 4:Tính tổng và tích bằng câu lệnh lặp GV: trình bày đoạn chương trình tính tổng N số tự nhiên, với N là số tự nhiên được nhập từ bàn phím (Pascal) Theo công thức tính tổng ta cần khai bao nhiêu biến? kiểu biến? HS: trả lời GV: Trong 2 biến thì biến nào có giá trị được nhập từ bàn phím? 4. Tính tổng và tích bằng câu lệnh lặp Vd 1: chương trình tính tổng N số tự nhiên đầu tiên, với N là số tự nhiên được nhập từ bàn phím. S = 1+2+3+ … + N program Tinh_tong; var N,i:integer; S:longint; begin write(‘Nhap so N = ‘); readln(N); S:= 0; for i:= 1 to N do S:= S+i; writeln(‘Tong cua’, N, ‘so tư nhien dau tien S = ‘, S); readln; end. Giáo viên: Nguyễn Thị Thúy Liễu 3 Trường THCS Hựu Thạnh Giáo án tin học 8 GV: Trong trường hợp dữ liệu có kiểu nguyên rất lớn ta dùng longint *Kiểu longint có phạm vi từ -2 31 đến 2 31 – 1. Vd 2: chương trình tính tích N số tự nhiên, với N là số tự nhiên được nhập từ bàn phím. N! = 1.2.3….N program Tinh_Giai_Thua; var N,i:integer; P:longint; begin write(‘Nhap so N = ‘); readln(N); P:= 1; for i:= 1 to N do P:= P*i; writeln( N, ‘! = ‘, P); readln; end. IV. Củng cố, hướng dẫn học ở nhà 1. Củng cố - Hãy cho một vài ví dụ trong thực tế trong đời sống hằng ngày mà ta phải thực hiện các thao tác được lặp đi lặp nhiều lần? - ThÕ nµo lµ cÊu tróc lÆp? - Cấu trúc lặp trong chương trình dùng để làm gì? - Trong ngôn ngữ lập trình Pascal cấu trúc lặp với số lần lặp cho trước được thể hiện với câu lệnh nào? 2. H ướng dẫn học - Học bài ,xem lại các ví dụ, chuẩn bị bài tập Tuaàn : 21 – Tieát 41,42 Giáo viên: Nguyễn Thị Thúy Liễu 4 Trng THCS Hu Thnh Giỏo ỏn tin hc 8 Ngy dy : BI TP I Mc tiờu Cng c li kin thc trong bi 7 v cõu lnh lp thụng qua vic lm bi tp ti lp v nh ca HS. Thỏi nghiờm tỳccn thn. II Chun b : GV: SGK HS: V ghi, v bi tp, SGK, SBT. III. T chc hot ng dy v hc 1. n nh 2. Kim tra bi c - Cu trỳc lp trong chng trỡnh dựng lm gỡ? - Trong ngụn ng lp trỡnh Pascal cu trỳc lp vi s ln lp cho trc c th hin vi cõu lnh no? 3. Bi mi Hot ng ca GV HS Ni dung GV: Nờu cu hi Khi thực hiện câu lệnh lặp, chơng trình kiểm tra một điều kiện. Với lệnh lặp for <biến đếm> := <giá trị đầu> to <giá trị cuối> do <câu lệnh>; của Pascal, điều kiện cần phải kiểm tra là gì? HS: Tr li GV: Nờu BT : Bi 1: Sau khi thc hin on chng trỡnh trờn giỏ tr ca J l bao nhiờu ? J:=0; for i:=0 to 5 j:=j+2; HS: Tr li GV: Chơng trình Pascal sau đây thực hiện gì? var i: integer; begin for i:=1 to 1000 do; end. HS: tr li GV: yờu cu HS lm BT 3( SGK) Bi 5: (SGK) Cỏc cõu lnh Pascal sau cú hp l khụng ? vỡ sao ? a) for i:=100 to 1 do writeln(A); Bi 1: Sau khi thc hin on chng trỡnh trờn giỏ tr ca j l 12 Bi 2: on chng trỡnh ny khụng thc hin gỡ c . Bi 3: Giỏo viờn: Nguyn Th Thỳy Liu 5 Trường THCS Hựu Thạnh Giáo án tin học 8 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’); d) var x:real; begin for x:=1 to 10 do writeln(‘A’); end. GV: Nêu BT Bài 3: Hãy mô tả thuật toán để tính tổng sau đây ? 1 1 1 1 1.3 2.4 3.5 ( 2) A n n = + + + + + HS: Thảo luận, trả lời GV: nhận xét, sửa sai GV: nêu BT : Viết thuật toán và chương trình tính luỹ thừa bậc n của x HS: Thảo luậu theo đôi bạn viết thuật toán , chương trình trình bày thuật toán , chương trình GV: nhận xét, sửa sai Trả lời: Trừ d), tất cả các câu lệnh đều không hợp lệ: a) Giá trị đầu phải nhỏ hơn giá trị cuối; b) Các giá trị đầu và giá trị cuối phải là số nguyên; c) Thiếu dấu hai chấm khi gán giá trị đầu; d) Thừa dấu chấm phẩy thứ nhất, nếu như ta muốn lặp lại câu lệnh writeln('A') mười lần, ngược lại câu lệnh là hợp lệ; e) Biến x đã được khai báo như là biến có dữ liệu kiểu số thực và vì thế không thể dùng để xác định giá trị đầu và giá trị cuối trong câu lệnh lặp. Bài 4: Thuật toán tính tổng A = )1( 1 5.3 1 4.2 1 3.1 1 + +++ nn Bước 1. Gán A ← 0, i ← 1. Bước 2. A ← 1 ( 2)i i + . Bước 3. i ← i + 1. Bước 4. Nếu i ≤ n, quay lại bước 2. Bước 5. Ghi kết quả A và kết thúc thuật toán. Bài 5: Bài 1. Thuật toán: Bước 1. Nhập các số n và x. Bước 2. A ← 1, i ← 0 (A là biến lưu luỹ thừa bậc n của x). Bước 3. i←i + 1, A ← A.x. Bước 4. Nếu i < n, quay lại bước 3. Bước 5. Thông báo kết quả A là luỹ thừa bậc n của x và kết thúc thuật toán. Chương trình Pascal có thể như sau: var n,i,x: integer; a: longint; begin write('Nhap x='); readln(x); Giáo viên: Nguyễn Thị Thúy Liễu 6 Trường THCS Hựu Thạnh Giáo án tin học 8 write('Nhap n='); readln(n); A:=1; for i:=1 to n do A:=A*X; writeln(x,' mu ',n,' bang ',A); end. IV. Củng cố, hướng dẫn học ở nhà 1. Củng cố 2. Hướng dẫn học - Học bài. - Làm lại cácbài tập. - Xem trước nội dung bài thực hành 5, giờ sau thực hành tại phòng máy Tuaàn : 22 – Tieát 43,44 Giáo viên: Nguyễn Thị Thúy Liễu 7 Trng THCS Hu Thnh Giỏo ỏn tin hc 8 Ngy dy : Bi thc hnh 5: Sử dụng lệnh lặp for do I. Mục tiêu: - Vận dụng kiến thức của vòng lặp for do, câu lệnh ghép để viết chơng trình, tìm hiểu câu lệnh gotoxy(), where<>, lệnh for lồng trong for - Viết chơng trình có sử dụng vòng lặp for do; Sử dụng câu lệnh ghép trong chơng trình; Rèn luyện kỹ năng đọc hiểu chơng trình có sử dụng vòng lặp for do. - Thái độ học tập nghiêm túc, tích cực làm các bài thực hành. II. Chuẩn bị của GV, HS GV: - Giáo án, SGK, phòng máy, phần mềm pascal HS: - SGK, vở ghi, bút III. T chc hot ng dy v hc 1. n nh 2. Kim tra bi c Hãy nêu cấu trúc câu lệnh lặp ? Cho ví dụ minh hoạ? 3. Bài mới: Chúng ta đã nghiên cứu lý thuyết về vòng lặp for do. để biết vòng lặp chạy nh thế nào thì hôm nay chúng ta cùng nhau đi vào tiết thực hành. Giáo viên ghi tên bài học lên bảng. Hoạt động của thầy và trò Nội dung Hoạt động 1: Viết chơng trình cho các bài tập đã cho về nhà. GV: yêu cầu HS vit chng trỡnh : Tính tổng của n số tự nhiên đầu tiênvào máy - HS: gõ chơng trình, chạy thử chơng trình, và báo cáo kết quả. - GV: Hỗ trợ học sinh trong quá trình thực hành. - Sau khi kết quả chạy chơng trình đã đúng, gv yêu cầu học sinh chữa bài của mình đã làm ở nhà cho đúng theo chơng trình đã chạy. GV: yờu cu HS: Viết chơng trình tìm xem có bao nhiêu số dơng trong n số nhập vào từ bàn phím HS: Vit chng trỡnh GV: Quan sỏt, hng dn , sa sai cho HS Bài 1: Tính tổng của n số tự nhiên đầu tiên Program tinh_tong; Uses crt; Var i, n: integer; tong: longin; Begin Clrscr; Tong:=0; Writeln(Nhap vao so n); readln(n); For i:=1 to n do Tong: = Tong+i; Writeln(Tong của, n,so tu nhien dautien la,tong); Readln; End. 2. Viết chơng trình tìm xem có bao nhiêu số dơng trong n số nhập vào từ bàn phím Program tinh_so_cac_so_duong; Uses crt; Var i,A, dem, n: integer; Begin Clrscr; Dem:=0; Writeln(Nhap vao so n); readln(n); For i:=1 to n do begin Giỏo viờn: Nguyn Th Thỳy Liu 8 Trng THCS Hu Thnh Giỏo ỏn tin hc 8 writeln(nhap vao so thu,i); readln(A); if A>0 then dem:=dem+1; end; Writeln(So cac so duong la,dem); Readln; End. Hoạt động 2: Bảng cửu chơng. - GV: Đa ra nội dung của bài toán. - HS: Nghiên cứu bài toán, tìm input và output. - GV: yêu cầu học sinh đọc hiểu chơng trình. - HS: đọc, phân tích câu lệnh tìm hiểu hoạt động của chơng trình. - GV: yêu cầu một học sinh đứng tại vị trí trình bày hoạt động của chơng trình, các nhóm khác cùng tham gia phân tích. - HS: tham gia hoạt động của giáo viên - GV: yêu cầu học sinh lập bảng hoạt động của chơng trình theo mẫu: Giả sử N=2: Bớc i i<=10 Writeln(n,.,i,=,n*i) 1 1 đúng 2.1=2 - HS: các nhóm lập bảng và đại diện nhóm báo cáo kết quả. - GV: nhận xét. - GV: cho chơng trình chạy trên máy, yêu cầu học sinh quan sát kết quả. HS: Thc hin Bài 2: Viết chơng trình in ra màn hình bảng nhân của một số từ 1 đến 9, và dừng màn hình để có thể quan sát kết quả. Program Bang_cuu_chuong; Uses crt; Var i, n: integer; Begin Clrscr; Writeln(Nhap vao so n); readln(n); Writeln(Bang nha,n); Writeln; For i:=1 to 10 do Writeln(n,x,i:2,=,n*i:3); Readln; End Hoạt động 3: Làm đẹp màn hình kết quả bằng lệnh gotoxy, where - Giáo viên cho chạy kết quả của bài thực hành Bang_cuu_chuong Yêu cầu học sinh quan sát kết quả và nhận xét khoảng cách giữa các hàng, cột. - HS: quan sát và đa ra nhận xét. - ? Có cách nào để khoảng cách giữa các hàng và các cột tăng lên? - GV: Giới thiệu câu lệnh gotoxy và where. - GV: yêu cầu học sinh mở chơng trình Bang_cuu_chơng và sửa lại chơng trình theo bài trên màn hình của giáo viên. - HS: gõ chơng trình vào máy, sửa lỗi Bài 2 sgk (T63) a) Giới thiệu lệnh gotoxy(), wherex - Gotoxy(a,b) Trong đó: a là chỉ số cột, b là chỉ số hàng - ý nghĩa của câu lệnh là đa con trỏ về cột a hàng b. - Wherex: cho biết số thứ tự của cột, wherey cho biết số thứ tự của hàng. * Lu ý: Phải khai báo th viện crt trớc khi sử dụng hai lệnh trên a) Chỉnh sửa chơng trình nh sau: Program Bang_cuu_chuong; Uses crt; Giỏo viờn: Nguyn Th Thỳy Liu 9 Trng THCS Hu Thnh Giỏo ỏn tin hc 8 chính tả, chạy chơng trình, quan sát kết quả. - GV: yêu cầu học sinh quan sát kết quả và so sánh với kết quả của chơng trinh khi cha dùng lệnh gotoxy(5, wherey) - HS: quan sát và nhận xét. Var i, n: integer; Begin Clrscr; Writeln(Nhap vao so n); readln(n); Writeln(Bang nha,n); Writeln; For i:=1 to 10 do begin gotoxy(5, wherey); Writeln(n,x,i:2,=,n*i:3); Readln; End. Hoạt động 4: sử dụng lệnh For lồng trong for - GV: giới thiệu cấu trúc lệnh for lồng, h- ớng dẫn học sinh cách sử dụng lệnh. - HS: ghi chép cấu trúc và lĩnh hội - GV: đa nội dung chơng trình bài thực hành 3 lên màn hình, yêu cầu học sinh đọc chơng trình, tìm hiểu hoạt động của chơng trình. - HS: hoạt động theo nhóm, tìm hiểu hoạt động của chơng trinh, đại diện của nhóm báo cáo kết quả thảo luận. - GV: cho chạy chơng trình. - HS : quan sát kết quả trên màn hình. Bài 3 SGK (T64). a) Câu lệnh for lồng trong for - For <biến đếm1:= giá trị đầu> to <giá trị cuối> do For <biến đếm 2:=giá trị đầu> to <giá trị cuối> do < câu lệnh>; Program Tao_bang; Uses crt; Var i,j: byte; Begin Clrscr; For i:=1 to 9 do Begin For j:=0 to 9 do Writeln(10*i+j:4); Writeln; End; Readln; Giỏo viờn: Nguyn Th Thỳy Liu 10 [...]... GV yờu cu HS c bi tp 3 - HS c theo yờu cu ca GV - GV cho HS tho lun nhúm tr li cõu hi ( nhúm 1 v 2: thut toỏn 1, nhúm 3 v 4: thut toỏn 2) - HS tho lun - GV gi i din nhúm tr li, cỏc nhúm khỏc nhn xột, b sung Giỏo viờn: Nguyn Th Thỳy Liu 18 Trng THCS Hu Thnh Giỏo ỏn tin hc 8 - HS quan sỏt v ghi v - GV yờu cu HS da vo thut toỏn vit chng trỡnh Pascal - HS vit chng trỡnh theo yờu cu bi tp Bi 5: Hóy ch... chng trỡnh tớnh tng cỏc s t nhiờn t 100 n 1000 * Vũng lp xỏc nh:(2,5 ) Program tinh_tong; Var i, S: Integer; Begin For i:= 100 to 1000 do S:= S + i; Giỏo viờn: Nguyn Th Thỳy Liu 28 Trng THCS Hu Thnh Giỏo ỏn tin hc 8 Wirteln( tong cac so tu nhien tu 100 den 1000 la:,S); Readln; End * Vũng lp khụng xỏc nh: (2,5 ) Program tinh_tong; Var i, S: Integer; Begin i:= 100; S:= 0; While i > 1000 do S:= S + i;... viờn: Nguyn Th Thỳy Liu 16 Trng THCS Hu Thnh Giỏo ỏn tin hc 8 - HS: Vở ghi III/ TIN TRèNH LấN LP 1)n nh 2)Kim tra bi c: - Kim tra bi c trong quỏ trỡnh lm bi tp 3)Bi mi: Hot ng ca GV - HS Ni dung Hot ng 1: Cht li kin thc trng tõm ỏp dng gii bi tp - GV: Em hóy nhc li cỳ phỏp lnh While do - HS tr li - GV cht ý v nhc li ln na cho HS nm vng - HS chỳ ý theo dừi v tip thu while do ; - GV... Hu Thnh Giỏo ỏn tin hc 8 1 Cng c: - Giỏo viờn h thng li ton b ni dung bi hc 2 Hng dn hc - Hc bi theo sỏch giỏo khoa v v ghi - ễn li cỏc kin thc chớnh ó hc v luyn thc hnh, lm i lm li nhiu ln - c trc phn 3: i tng hỡnh hc tit sau hc Giỏo viờn: Nguyn Th Thỳy Liu 34 Trng THCS Hu Thnh Giỏo ỏn tin hc 8 Tuan : 28 Tieỏt 55,56 Ngy dy : HC V HèNH VI PHN MM GEOGEBRA I MC TIấU: - Hc sinh nm c cỏc i tng ca phn... HS trỡnh by hot ng ca chng trỡnh - GV cho HS gừ chng trỡnh vo mỏy tớnh, dch v chy chng trỡnh vi mt vi chớnh xỏc khỏc nhau - HS gừ chng trỡnh vo mỏy ca mỡnh, sau ú dch v chy chng trỡnh theo yờu cu ca GV Giỏo ỏn tin hc 8 lnh sau õy Uses Crt; Var n,i : integer; BEGIN ClrScr; Write(Nhap vao mot so nguyen: );Readln(n); If n . do Giáo viên: Nguyễn Thị Thúy Liễu 2 Trường THCS Hựu Thạnh Giáo án tin học 8 GV: Cho hs nhận xét và so sánh sự khác nhau ở câu lệnh lặp trong hai vd trên? HS: Nhận xét Gv: Giải thích cho học. dụ 3. Giáo viên: Nguyễn Thị Thúy Liễu 13 Trường THCS Hựu Thạnh Giáo án tin học 8 trong ) HS : quan sát GV : Chạy tay cho học sinh xem Hs : chú ý nghe và tự chạy tay lại GV : Yêu cầu học sinh. toán. Đoạn chương trình Pascal tương ứng: S:=10; n:=0; while S<10 do begin n:=n+3; S:=S-n end; writeln(S); Giáo viên: Nguyễn Thị Thúy Liễu 18 Trường THCS Hựu Thạnh Giáo án tin học 8 -

Ngày đăng: 04/06/2015, 10:00

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan