Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 48 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
48
Dung lượng
301 KB
Nội dung
Giáo án Tin học 8 Tuần: 1 Ngày soạn: 30/08/2006 Tiết: 1, 2 Ngày dạy: ÔN TẬP I. MỤC TIÊU *Thống kê lại và nắm được tất cả các các kiến thức đã học từ việc viết một chương trình đơn giản đến chương trình có chứa vòng lặp xác định For. *Rèn luyện cách ứng phó một bài tập lớn. II. CHUẨN BỊ GV: *Thống kê lại tất cả các kiến thức lớp 7. HS: *Ôn trước ở nhà lại tất cả kiến thức đã học. *Nắm lại cách viết chương trình trên máy. III. BÀI ÔN TẬP 1. Thủ tục nhập xuất -Nhập: READ, READLN. Ví dụ: Nhập dữ liệu vào biến a thì ta viết: READLN(a); -Xuất: WRITE, WRITELN. Ví dụ: Xuất dữ liệu từ biến a thì ta viết: WRITELN(a); 2. Các kiểu dữ liệu -Số nguyên: INTEGER, LONGINT Ví dụ: var: integer; -Số thực: REAL Ví dụ: var: Real; 3. IF THEN ELSE -Cú pháp: IF <ĐK> THEN <CV1> ELSE <CV2> -Đây là câu lệnh điều kiện -ĐK đúng thì thực hiện CV1, nếu ĐK sai thì thực hiện CV2. VD: IF a>0 THEN b:=3 ELSE b:=5; Nếu a nhận giá trị là 6 thì b=5 Nếu a nhận giá trị –4 thì b=3 4. FOR TO DO -Cú pháp: FOR <biến>:=<giá trị đầu> TO <biến>:=<giá trị cuối> DO <công việc> -Đây là vòng lặp xác định. VD: For i:=1 to 3 do writeln(i); -i nhận giá trị là 1, 2, 3 và thực hiện công việc xuất i tương ứng. 5. BÀI TẬP Bài 1: Viết chương trình nhập vào 2 số nguyên a, b. Tính a+b và xuất kết quả ra màn hình. Bài 2: Viết chương trình nhập vào 2 số nguyên a, b. Tính a+b, a-b, a*b và xuất kết quả ra màn hình. Bài 3: Viết chương trình nhập vào 2 số nguyên a, b. Tính a 2 và xuất kết quả ra màn hình. Bài 4: Viết chương trình nhập vào 2 số nguyên a, b. Tính a 2 + b 2 và xuất kết quả ra màn hình. Bài 5: Viết chương trình nhập vào 2 số nguyên a, b. Tính a 2 + b 2 ,a 2 - b 2 và xuất kết quả ra màn hình. GV: Lưu Thị Bích Hạnh Giáo án Tin học 8 Bài giải Program bai1; Var a,b:integer; Begin write(‘ nhap a=’);readln(a); write(‘ nhap b=’);readln(b); write(‘ Tong la’);writeln(a+b); Readln; end. Program bai2; Var a,b:integer; Begin write(‘ nhap a=’);readln(a); write(‘ nhap b=’);readln(b); write(‘ Tong la’);writeln(a+b); write(‘ Hieu la’);writeln(a-b); Readln; end. Program bai3; Var a:integer; Begin write(‘ nhap a=’);readln(a); write(‘ ket qua la’);writeln(a*a); Readln; end. Program bai4; Var a,b:integer; Begin write(‘ nhap a=’);readln(a); write(‘ nhap b=’);readln(b); write(‘ Tong la’);writeln(a*a+b*b); Readln; end. Program bai5; Var a,b:integer; Begin write(‘ nhap a=’);readln(a); write(‘ nhap b=’);readln(b); write(‘ Tong la’);writeln(a*a+b*b); write(‘ Hieu la’);writeln(a*a-b*b); Readln; end. I. HƯỚNG DẪN VỀ NHÀ Ôn lại tất cả kiến thức đã học. GV: Lưu Thị Bích Hạnh Việt Trì, ngày…. tháng…. năm…. Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh Giáo án Tin học 8 Tuần: 2 Ngày soạn: Tiết: 3, 4 Ngày dạy: VÒNG LẶP WHILE DO I. MỤC TIÊU *Nắm được cú pháp và cách sử dụng vòng lặp WHILE…DO… *Biết được sự khác nhau của REPEAT, WHILE và FOR. *Nhận biết được khi nào sử dụng lệnh lặp nào IV. CHUẨN BỊ 1. GV: * Dùng bảng phụ ghi tóm tắt lại nôi dung bài học. HS: *Học thuộc bài cũ. *Đọc trước bài mới. V. BÀI MỚI 1. Lưu đồ lệnh WHILE DO * Lưu đồ * Ý nghĩa lưu đồ: Trong khi mà điều kiện còn đúng thì cứ thực hiện Công việc, rồi quay trở về kiểm tra điều kiện lại. Vòng lặp được tiếp tục, đến khi điều kiện đặt ra không còn đúng nữa thì đi tới thực hiện lệnh tiếp theo 2. Cú pháp lệnh WHILE DO WHILE <điều kiện> DO <Công việc> Ghi chú: · Ðiều kiện trong cấu trúc lặp WHILE DO là một biểu thức logic kiểu Boolean chỉ có 2 giá trị là Ðúng (True) hoặc Sai (False) · Nếu điều kiện Ðúng thì chương trình sẽ chạy trong cấu trúc WHILE DO. · Sau mỗi lần lặp, chương trình trở lại kiểm tra điều kiện. Tùy theo biểu thức logic của điều kiện là Ðúng hay Sai thì chương trình sẽ thực hiện Công việc tương ứng. · Nếu Sai thì chuyển xuống dưới cấu trúc WHILE DO 3. Ví dụ: GV: Lưu Thị Bích Hạnh Trang 3 Giáo án Tin học 8 Viết chương trình nhập vào 1 số a. Nếu a không phải là số dương thì nhập lại, đến khi nào là số dương thì dừng. Bài giải Program bai1; Var a:Real; Begin Readln(a); While a<0 do Readln(a); Readln; End. GV: Lưu Thị Bích Hạnh Trang 4 Việt Trì, ngày…. tháng…. năm…. Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh Giáo án Tin học 8 Tuần: 3 Ngày soạn: Tiết: 5, 6 Ngày dạy: THỰC HÀNH I. MỤC TIÊU *Viết được chương trình có chứa vòng lặp WHILE DO *Thay thế một chương trình có chứa FOR thành WHILE DO và ngược lại. *Sửa một số lỗi thường gặp. VI. CHUẨN BỊ 1. GV:*Chẩn bị phòng máy, bài tập, lịch trình tiến trình giờ thực hành. 2. HS: *Ôn lại lý thuyết đã học. * Giải trước bài tập về nhà vào tập để thực hành. VII. BÀI THỰC HÀNH Bài 1: Viết chương trình nhập vào 1 số a. Nếu a không phải là số dương thì nhập lại, đến khi nào là số dương thì dừng. Program bai1; Var a:Real; Begin Readln(a); While a<0 do Readln(a); Readln; End. Bài 2: Viết chương trình nhập vào 1 số a. Nếu a không phải là số chẵn thì nhập lại, đến khi nào là số chẵn thì dừng. Program bai2; Var a:Real; Begin Readln(a); While a mod 2<>0 do Readln(a); Readln; End. VIII. HƯỚNG DẪN VỀ NHÀ Lài bài tập và xem trước bài mới. GV: Lưu Thị Bích Hạnh Trang 5 Việt Trì, ngày…. tháng…. năm…. Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh Giáo án Tin học 8 Tuần: 4 Ngày soạn: Tiết: 7, 8 Ngày dạy: VÒNG LẶP REPEAT UNTIL I. MỤC TIÊU *Nắm được cú pháp và cách sử dụng vòng lặp REPEAT…UNTIL… *Biết được sự khác nhau của REPEAT …UNTIL… và FOR. *Nhận biết được khi nào sử dụng lệnh lặp nào IX. CHUẨN BỊ 1. GV: * Dùng bảng phụ ghi tóm tắt lại nôi dung bài học. HS: *Học thuộc bài cũ. *Đọc trước bài mới. X. BÀI MỚI 1. Lưu đồ lệnh và Cú pháp Câu lệnh REPEAT UNTIL dùng trong các trường hợp khi biến điều khiển không có kiểu rời rạc và đặc biệt trong các trường hợp số lần lặp không biết trước. * Ý nghĩa: Nếu điều kiện logic là Sai (False) thì lặp lại lệnh cho đến khi điều kiện Ðúng thì mới thoát ra khỏi cấu trúc REPEAT UNTIL. Nếu có nhiều câu lệnh thì mỗi lệnh ngăn cách nhau bằng dấu chấm phẩy (;)Công việc của REPEAT và UNTIL không nhất thiết phải dùng lệnh ghép để nhóm từ 2 lệnh đơn trở lên thành công việc. 2. VÍ DỤ Viết chương trình nhập vào 1 số a. Nếu a không phải là số dương thì nhập lại, đến khi nào là số dương thì dừng. Bài giải Program bai1; Var a:Real; Begin GV: Lưu Thị Bích Hạnh Trang 6 Giáo án Tin học 8 Repeat Readln(a); Until a>0; Readln; End. 3. Sự khác biệt giữa While và Repeat: So sánh 2 cách viết WHILE DO và REPEAT UNTIL ta thấy có sự khác biệt: -Vòng lặp While luôn luôn đi với cặp từ khoá Begin và End còn trong vòng lặp Repeat không cần sử dụng cặp Begin và End. - Trong cấu trúc WHILE DO thì <Ðiều kiện> được kiểm tra trước, nếu thỏa <Ðiều kiện> thì mới thực hiện <Công việc>. - Ngược lại, trong cấu trúc REPEAT UNTIL thì <Công việc> sẽ được thực thi trước sau đó mới kiểm tra <Ðiều kiện>, nếu không thỏa <Ðiều kiện> thì tiếp tục thi hành <Công việc> cho đến khi <Ðiều kiện> là đúng. Lệnh REPEAT UNTIL thường được sử dụng trong lập trình, nhất là lúc người sử dụng muốn tiếp tục bài toán ở trường hợp thay đổi biến mà không phải trở về chương trình và nhấn tổ hợp phím Ctrl + F9 lại. Ví dụ 6.18: Nhân 2 số a và b PROGRAM Tich; VAR a, b : integer ; CK : char ; BEGIN REPEAT Write (' Nhập số a = '); Readln (a) ; Write (' Nhập số b = '); Readln (b) ; Writeln (' Tích số của a x b là :' , a*b : 10 ) ; Writeln (' Tiếp tục tính nữa không (CK) ? '); Readln (CK) ; UNTIL upcase(CK) = K; {hàm chuyển đổi ký tự trong biến} {CK thành ký tự in hoa} END. GV: Lưu Thị Bích Hạnh Trang 7 Việt trì, ngày…. tháng…. năm…. Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh Giáo án Tin học 8 Tuần: 5 Ngày soạn: Tiết: 9, 10 Ngày dạy: THỰC HÀNH I. MỤC TIÊU *Hiểu rỏ hơn về cách chạy chương trình của vòng lặp REPEAT *Thay thế một chương trình có chứa FOR thành REPEAT và ngược lại. *Sửa một số lỗi thường gặp. XI. CHUẨN BỊ 1. GV:*Chuẩn bị phòng máy, bài tập, lịch trình tiến trình giờ thực hành. 2. HS: *Ôn lại lý thuyết đã học. * Giải trước bài tập về nhà vào tập để thực hành. XII. BÀI THỰC HÀNH Bài 1: Viết chương trình nhập vào 1 số a. Nếu a không phải là số dương thì nhập lại, đến khi nào là số dương thì dừng. Bài 2: Viết chương trình nhập vào 1 số a. Nếu a không phải là số chẵn thì nhập lại, đến khi nào là số chẵn thì dừng. Bài giải bài 1 Program bai1; Var a:Real; Begin Repeat Readln(a); Until a>0; Readln; End. Bài giải bài 2 Program bai2; Var a:Real; Begin Repeat Readln(a); Until a mod 2=0; Readln; End. XIII. HƯỚNG DẪN VỀ NHÀ Lài bài tập và xem lại bài thực hành GV: Lưu Thị Bích Hạnh Trang 8 Việt Trì, ngày…. tháng…. năm…. Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh Giáo án Tin học 8 Tuần: 6 Ngày soạn: Tiết: 11, 12 Ngày dạy: CẤU TRÚC DỮ LIỆU MẢNG I. MỤC TIÊU * Biết được thế nào là mảng,cách khai báo, nhập liệu, và các thao tác căn bản trên máy. * Biết được khi nào sử dụng mảng, hiệu quả của việc sử dụng mảng. XIV. CHUẨN BỊ 1. GV: * Một số ví dụ thực tế về mảng. HS: * Ôn lại vòng lặp FOR. XV. BÀI MỚI 1. Khai báo dữ liệu kiểu mảng Một mảng dữ liệu gồm một số hữu hạn phần tử có cùng kiểu gọi là kiểu cơ bản. Số phần tử của mảng được xác định ngay từ khi định nghĩa ra mảng. Mỗi phần tử của mảng đựoc truy nhập trực tiếp thông qua tên mảng cùng với chỉ dẫn truy nhập được để giữa hai ngoặc vuông [ ]. Định nghĩa biến A có kiểu mảng : gồm có các phần tử từ n đến m và có kiểu dữ liệu là KDL thì được khai báo như sau: VAR A : Array[ n m ] Of KDL ; Ví dụ: Khai báo mảng BB có các phần tử từ 1 đến 10 và kiểu dữ liệu chứa là số nguyên (INTEGER) nhạp vào từ bàn phím: VAR BB : Array[ 1 10] Of INTEGER ; 2. Đưa dữ liệu vào mảng Ta có thể đưa dữ liệu từ ngoài (bàn phím) vào mảng bằng lệnh READ hoặc READLN như sau: READ( BB(i) ) ; hoặc READLN( BB(i) ) ; Ví dụ: Cho mảng 10 phần tử và nhập vào mảng các số nguyên từ bàn phím VAR A: ARRAY [1 10] OF INTEGER; I: INTEGER; BEGIN For i:=1 to 10 do Readln(A(i)); Readln; END. Hoặc để sáng suốt hơn thì ta có thể viết như sau: VAR A: ARRAY [1 10] OF INTEGER; I: INTEGER; BEGIN For i:=1 to 10 do Begin Write(‘ Nhap phan tu thu ‘,i,’ =’); Readln(A(i)); GV: Lưu Thị Bích Hạnh Trang 9 Giáo án Tin học 8 End; Readln; END. 3. Đưa dữ liệu từ mảng ra màng hình Ta có thể đưa dữ liệu từ mảng ra ngoài màn hình bằng lệnh WRITE hoặc WRIELN như sau: WRITE( BB(i) ) ; hoặc WRITELN( BB(i) ) ; Ví dụ: Cho mảng 10 phần tử và nhập vào mảng các số nguyên từ bàn phím và cho hiện ra màn hình VAR A: ARRAY [1 10] OF INTEGER; I: INTEGER; BEGIN For i:=1 to 10 do Readln(A(i)); Writeln(‘ cac so vua nhap la: ‘); For i:=1 to 10 do wrieln(A(i)); Readln; END. 4.Lấy dữ liệu từ mảng để xử lý: Ví dụ: Nhập từ bàn phím 10 số và tính tổng của nó. VAR A: ARRAY [1 10] OF INTEGER; i: INTEGER; BEGIN For i:=1 to 10 do Begin Write( ‘nhap phan tư thu ‘,i,’ =’);readln(A(i)); End; For i:=1 to 10 do tong:= tong+A(i); Write (‘Tong la: ‘, tong); Readln; END. GV: Lưu Thị Bích Hạnh Trang 10 Việt Trì, ngày…. tháng…. năm…. Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh [...]... Tìm bội của một số nguyên a -Bội của một số nguyên a là tập hợp những số m sao cho m=a*i (i là số nguyên) VD: số 8 có các bội là 8, 16,24, 32, - Cách tìm tập hợp các bội của một số nguyên a là ta nhân lần lượt a cho các số nguyên từ 1, 2, 3… - Giải thuật: (k là một số nguyên) For i:= 1 to k do writeln(a*i); GV: Lưu Thị Bích Hạnh Trang 26 Giáo án Tin học 8 4 Tìm bội chung của 2 số nguyên a, b -Bội... MÔN TIN HỌC 8 Đề: Viết chương trình nhập vào 2 số nguyên a, b Xuất tất cả các ước chung của a và b VD: Nhập a=12, b= 18 Xuất: 1 2 3 * Lưu ý Học sinh lưu bài với tên và kết hợp với lớp của mình VD: học sinh là trần Quốc Cường lớp 8A1 thì lưu với tên là: D:\cuong8a1.pas Người soạn Việt Trì, ngày… tháng… năm… Duyệt của tổ trưởng Lưu Thị Bích Hạnh GV: Lưu Thị Bích Hạnh Trang 28 Giáo án Tin học 8 Tuần: 18. .. b) If (a>b) then Max:=a;If (b>a) then Max:=b; GV: Lưu Thị Bích Hạnh Trang 24 Giáo án Tin học 8 c) d) Max:=b;If a>Max then Max:=a; Cả 3 câu đều đúng GV: Lưu Thị Bích Hạnh Trang 25 Giáo án Tin học 8 Tuần: 16 Tiết: 31, 32 Ngày soạn: Ngày dạy: ƯỚC CHUNG – BỘI CHUNG XXVII MỤC TIÊU *Hiểu rỏ hơn thế nào là bội, ước, bội chung, ước chung *Sửa một số lỗi thường gặp XXVIII CHUẨN BỊ 1 GV: 2 HS: XXIX BÀI HỌC... integer; SỬA BÀI KIỂM TRA ĐÁP ÁN Câu 1d Câu 11b Câu 2d Câu 12b Câu 3d Câu 4b Câu 5b Câu 6a Câu 7c Câu 8b Câu 9b Câu 10c Câu 13d Câu 14c Câu 15a Câu 16b Câu 17d Câu 18b Câu 19b Câu 20c GV: Lưu Thị Bích Hạnh Trang 30 Giáo án Tin học 8 GV: Lưu Thị Bích Hạnh Trang 31 Giáo án Tin học 8 Tuần: 19 Tiết: 37, 38 Ngày soạn: Ngày dạy: XÂU KÍ TỰ XXXI MỤC TIÊU - Biết 2 cách khai báo xâu dùng từ khóa string và hạn... Giáo án Tin học 8 Tuần: 10 Tiết: 19, 20 Ngày soạn: Ngày dạy: THỰC HÀNH I MỤC TIÊU *Củng cố lại kiến thức đã học II ĐỀ ĐỀ KIỂM TRA 1 TIẾT MÔN TIN HỌC 8 Đề: Viết chương trình nhập vào mảng có 6 số Sắp xếp theo thứ tự tăng dần VD: Nhập 1 5 -6 0 2 4 Xuất: -6 0 1 2 4 5 * Lưu ý Học sinh lưu bài với tên và kết hợp với lớp của mình VD: học sinh là trần Quốc Cường lớp 8A1 thì lưu với tên là: D:\cuong8a1.pas... thời chia hết cho a và b VD: số 8 và 6 có các bội chung là 24, 48, … - Cách tìm tập hợp các bội chung của 2 số nguyên a, b là lần lượt nhân tích của a*b với lần lượt 1, 2, 3, … - Giải thuật: (k là một số nguyên) For i:= 1 to k do writeln(a*b*i); Việt Trì, ngày… tháng… năm… Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh GV: Lưu Thị Bích Hạnh Trang 27 Giáo án Tin học 8 Tuần: 17 Tiết: 33, 34 Ngày soạn:... Bích Hạnh Trang 19 Giáo án Tin học 8 Min:=a; If b< Min then Min:=b; If c< Min then Min:=c; If d< Min then Min:=d; Write(‘ so nho nhat la ‘,Min); Readln; End * Mở rộng: Tìm số lớn nhất của 3 số, 5 số, nhiều số ( sử dụng mảng) Việt Trì, ngày… tháng… năm… Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh GV: Lưu Thị Bích Hạnh Trang 20 Giáo án Tin học 8 Tuần: 14 Tiết: 27, 28 Ngày soạn: Ngày dạy: THỰC... năm (ví dụ 10/01/20 08) và xuất kết quả ra màn hình Program bt1; Write(‘ho ten da nhap la’);writeln(t); Var t:string[29]; Readln; Begin End Write(‘ nhap vao ho ten cua mot hoc sinh’);readln(t); Program bt2; Write(‘ho ten da nhap la’);writeln(t); Var ngay,thang:string[2];nam:string[4]; Readln; T:string[10]; End Begin Program bt2; Write(‘ nhap vao ngay’);readln(ngay); Var ho,ten:string [8] ;lot:string[20];... tử là các số thực, hãy sắp xếp các số đó theo thứ tự tăng dần 2 Thuật giải Giả sử mảng M có 8 phần tử (N = 8) là các số thực Ý tưởng của thuật giải sắp xếp dưới đây là Bước 1 Ta sẽ chọn phần tử nhỏ nhất trong các phần tử từ phần tử thứ nhất đến phần tử thứ N, rồi tráo đổi nó với phần tử thứ nhất Bước 2 Ta sẽ chọn phần tử nhỏ nhất trong các phần tử từ phần tử thứ hai đến phần tử thứ N, rồi tráo đổi nó... Begin For i:=1 to 10 do GV: Lưu Thị Bích Hạnh Trang 21 Giáo án Tin học 8 begin Write(‘ nhap vao so nguyen thu ‘,i); Readln(a[i]); end; d:=0; For i:=1 to 10 do Write(‘ Tong so cac so chan la :’,d); Readln; End Việt Trì, ngày… tháng… năm… Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh GV: Lưu Thị Bích Hạnh Trang 22 Giáo án Tin học 8 Tuần: 15 Tiết: 29, 30 Ngày soạn: Ngày dạy: ĐỀ KIỂM TRA LÍ THUYẾT . Thị Bích Hạnh Giáo án Tin học 8 Tuần: 10 Ngày soạn: Tiết: 19, 20 Ngày dạy: THỰC HÀNH I. MỤC TIÊU *Củng cố lại kiến thức đã học II. ĐỀ ĐỀ KIỂM TRA 1 TIẾT MÔN TIN HỌC 8 Đề: Viết chương trình. Cường lớp 8A1 thì lưu với tên là: D:cuong8a1.pas GV: Lưu Thị Bích Hạnh Trang 15 Việt Trì, ngày…. tháng…. năm…. Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh Giáo án Tin học 8 Tuần: 11. lại bài thực hành GV: Lưu Thị Bích Hạnh Trang 8 Việt Trì, ngày…. tháng…. năm…. Duyệt của tổ trưởng Người soạn Lưu Thị Bích Hạnh Giáo án Tin học 8 Tuần: 6 Ngày soạn: Tiết: 11, 12 Ngày dạy: CẤU