- Dẫn dắt, giải thích cho HS hiểu được ý nghĩa, dạng chương trình con, cách dùng các tham số (tham biến, tham trị), thứ tự khai báo, đầu vào, đầu ra của từng chương trình[r]
(1)Ngày soạn:
Tiết PPCT : 29, 30
BÀI THỰC HÀNH SỐ 5 I.Mục tiêu:
1- Kiến thức:
Củng cố cho học sinh kiến thức xâu ký tự, đặc biệt hàm thủ tục liên quan
Nắm số thuật toán : tạo xâu mới, đếm số lần xuất ký tự…
2- Kỹ :
Khai báo biến kiểu xâu Nhập, xuất giá trị cho biến xâu
Duyệt qua tất ký tự xâu Sử dụng hàm thủ tục chuẩn
3- Thái độ : Tự giác, tích cực, chủ động thực hành. II.Chuẩn bị giáo viên học sinh:
GV: - Phịng máy vi tính cài đầy đủ Turbo Pascal.
Tổ chức phòng máy để HS có kỹ làm việc với kiểu xâu HS: SGK, tập chuẩn bị sẵn nhà
III.Phương pháp dạy học:
Hoạt động HS Hoạt động GV Ghi bảng
Quan sát, đọc kỹ đề
-HS trả lời:
* Là xâu Palidrom: 45654; abccba * Không xâu Palidrom: abcdba - HS nhận xét
HĐTP1: Tìm hiểu đề bài:
- Giới thiệu nội dung đề lên bảng - GV diễn giải: Một xâu gọi Palidrom ta đọc ký tự từ phải sang trái giống đọc từ trái sang phải - Yêu cầu HS cho ví dụ xâu
Palidrom ví dụ khơng phải xâu Palidrom
* Gọi HS trả lời
Bài 1: SGK trang 73
Gợi mở, vấn đáp kết hợp hoạt động nhóm IV.Tiến trình dạy:
Hoạt động 1: Tìm hiểu chương trình, đề xuất phương án cải tiến
(2)- Quan sát chương trình, suy nghĩ, phân tích để hiểu chương trình
- HS trả lời:
* Kiểm tra xâu có phải Palidrom hay không? *In ra: ‘ xau la Palidrom’ ‘xau khong la Palidrom’ - HS nhận xét
- Quan sát GV thực chương trình, nhập liệu kết chương trình
Hoạt động 2: Tìm hiểu chương trình gợi ý
- GV thực chương trình gợi ý máy chủ để HS quan sát
* Chức chương trình gì? *Kết in nào?
- Gọi HS trả lời - Gọi HS khác nhận xét - GV xác
- Chạy chương trình máy chủ để HS kiểm nghiệm suy luận - Chú ý theo dõi yêu cầu
của GV trả lời số câu hỏi dẫn dắt:
* Các ký tự vị trí giống
*Ký tự thứ i đối xứng với ký tự thứ length( ) – i +1 * So sánh tối đa length( ) div
* Có thể dùng For While
-Thực soạn thảo chương trình vào máy theo yêu cầu cải tiến GV - Nhập liệu vào thông báo kết
Hoạt động 3: Cải tiến chương trình - GV nêu yêu cầu : Viết lại chương trình mà khơng sử dụng biến trung gian p
* Nhận xét cặp vị trí đối xứng xâu Palidrom? * Ký tự thứ i đối xứng với ký tự vị trí nào?
* Cần phải so sánh cặp ký tự xâu để biết xâu Palidrom?
* Dùng cấu trúc lặp để so sánh ? - Gọi HS trả lời
- GV xác
- Yêu cầu HS chi tiết hoá câu lệnh để có chương trình chạy
- Yêu cầu HS nhập liệu cho sẵn GV thông báo kết
-Xác nhận làm có kết sửa sai cho HS có kết sai
Hoạt động 2: Rèn luyện kỹ lập trình
(3)- Quan sát đề xác định công việc cần thực
- Nhóm 1:
* Dữ liệu vào, liệu toán?
* Nêu nhiệm vụ cần thực giải toán
* Cấu trúc liệu phải sử dụng nào?
* Ta phải sử dụng hàm nào?
- Nhóm 2:
* Vào: Một xâu S
* Ra: Dãy số ứng với xuất loại ký tự xâu
* Nhiệm vụ: Duyệt từ trái sang phải, thêm đơn vị cho ký tự đọc
* Cấu trúc liệu: Dem[‘A’ ’Z’]
* Dùng hàm Upcase
-Thực soạn thảo chương trình vào máy theo yêu cầu GV - Nhập liệu vào thông báo kết cho GV
HĐTP1: GV giới thiệu đề bài - GV nêu mục đích tốn - Chia lớp thành nhóm:
* Nhóm 1: Đặt câu hỏi phân tích
* Nhóm 2: Trả lời câu hỏi phân tích
- Theo dõi câu hỏi phân tích nhóm câu trả lời nhóm - Bổ sung sửa sai cho nhóm nhóm
HĐTP2:
- GV đưa dàn ý chi tiết thông qua bảng phụ yêu cầu HS chi tiết hoá câu lệnh để có chương trình chạy
- u cầu HS nhập liệu cho sẵn GV thông báo kết
-Xác nhận làm có kết sửa sai cho HS có kết sai
Bài 2: SGK trang 73
Hoạt động 3: Rèn luyện kỹ tìm kiếm thay xuất từ từ khác trong xâu văn bản
Hoạt động HS Hoạt động GV Ghi bảng
- GV giới thiệu đề
- GV hướng dẫn: Tìm vị trí xâu “anh” xâu st cho, xoá xâu chèn xâu “em” vào vị trí Lặp lặp lại điều khơng tìm thấy xâu “anh” cần thay xâu st
* Các hàm thủ tục chuẩn biết kiểu xâu tìm vị trí xuất xâu con, xố xâu con, chèn xâu khơng?
- Gọi HS trả lời
(4)- HS trả lời - HS nhận xét
-HS nhà chuẩn bị
- Gọi HS khác nhận xét - GV xác
- GV HS thống dàn ý chương trình yêu cầu HS nhà chi tiết hoá câu lệnh để có chương trình chạy
Hoạt động 3: củng cố
Nắm số thuật toán đơn giản liên quan đến xâu ký tự :
Kiểm tra xâu đối xứng
Tìm tần suất xuất ký tự có xâu
Đọc trước nội dung kiểu ghi – SGK trang 74
-Ngày soạn:
Tiết PPCT: 32 Bài 13: KIỂU BẢN GHI.
I)MỤC TIÊU:
1 Về kiến thức:
- Biết khái niệm ghi
- Biết khai báo ghi, gán giá trị, truy cập trường ghi 2 Về kỹ năng:
- Khai báo kiểu ghi, khai báo biến kiểu ghi - Nhận biết trường (thuộc tính) biến ghi 3 Về tư thái độ:
- Biết quy lạ quen
- Phát triển tư logic từ mảng chiều kiểu xâu - Tích cực học tập, lắng nghe giảng
- Cẩn thận, xác lập luận II)CHUẨN BỊ:
1 Giáo viên: Giáo án, đồ dùng dạy học, bảng phụ
2 Học sinh:Sách giáo khoa, sách tập, cũ, III)PHƯƠNG PHÁP: Gợi mở vấn đáp, thuyết trình diễn giải. IV)TIẾN TRÌNH BÀI HỌC:
1.Hoạt động1: Kiểm tra cũ:
Hoạt động học sinh Hoạt động giáo viên Ghi bảng -Gọi HS1 thực
- Gọi HS2 thực
H1: Nêu cách khai báo mảng chiều? Cho ví dụ?
(5)-Các HS khác nhận xét, bổ sung?
-Chính xác hoá nội dung, cho điểm
2.Hoạt động2: Giới thiệu mới.
Hoạt động học sinh Hoạt động giáo viên Ghi bảng
-Học sinh thực
H1: Cho học sinh quan sát bảng kết điểm thi trang 74 SGK
- Cho học sinh kết luận thơng tin đó, từ kết luận kiểu liệu
H2: Chỉnh sửa, giới thiệu trường, đối tượng, thuộc tính đối tượng, từ vào nội dung
3.Hoạt động3: Khai báo kiểu ghi.
Hoạt động học sinh Hoạt động giáo viên Ghi bảng -HS thực
-HS thực trình bày lời giải
-Các HS lại nhận xét bổ sung
H1: Yêu cầu học sinh xem SGK nêu cách khai báo kiểu ghi, kiểu biến ghi
-Chính xác hố nội dung H2:u cầu học sinh khai báo kiểu ghi, kiểu biến ghi cho bảng kết thi trang 74 SGK
-Gv xác hố nội dung ví dụ
1)Khai báo: SGK trang 75
*Ví dụ:
Nội dung ví dụ chỉnh sửa
*Lưu ý: Nếu A biến kiểu ghi, X tên trường, để tham chiếu đến trường X
ta viết: A.X 4.Hoạt động4: Gán giá trị.
Hoạt động học sinh Hoạt động giáo viên Ghi bảng -HS xem sách trả lời
-HS thực
H1: Yêu cầu học sinh xem sách trả lời có cách gán giá trị cho biến ghi?
-Chính xác hố nội dung H2: Cho ví dụ cho cách gán?
-Gv chỉnh sửa nội dung
2)Gán giá trị:
- Có cách gán SGK trang 76
*Ví dụ:
-Nội dung chỉnh sửa 5.Hoạt động5: Củng cố dặn dò.
(6)bày lời giải
-Các HS lại nhận xét , bổ sung
trong bảng phụ?
-Gv xác hố nội dung H2: Dặn dị: Học cũ, làm tập 1- 10 trang 79-80
Ngày sinh Giới tính Chiều cao Cân nặng
-Ng ày soạn:
Tiết PPCT: 31, 33
BÀI TẬP CHƯƠNG IV. I Mục tiêu:
1 Về kiến thức: Củng cố kiến thức về:
- Các quy tắc kiểu liệu có cấu trúc để thực liệu thực tế
- Kiểu liệu có cấu trúc xây dựng từ kiểu liệu sở theo số cách thức tạo kiểu ngơn ngữ lập trình Pascal quy định
- Mỗi kiểu liệu có cấu trúc thường hữu ích việc giải số tập - Trong ngôn ngữ Pascal dùng mô tả kiểu liệu với từ khoá Type
2 Về kĩ năng:
- Rèn luyện kĩ khai báo kiểu liệu có cấu trúc (với Pascal, sử dụng thành thạo từ khoá Var, Type)
- Sử dụng thành thạo thao tác vào/ phép toán thành phần sở
3 Về tư thái độ:
- Thái độ học tập tích cực, ham thích lập trình II Chuẩn bị:
- GV: SGK, SBT, giáo án, bảng phụ - HS: Chuẩn bị tập nhà III Phương pháp:
- Nêu vấn đề, Dẫn dắt, gợi ý IV Tiến trình hoạt động:
Tiết 1:
+ Hoạt động 1: Giải tập số trang 79 Sách GK Tin học lớp 11
Hoạt động GV Hoạt động HS Ghi bảng
HĐTP1:
H1: Sử dụng kiểu liệu và
(7)Hoạt động GV Hoạt động HS Ghi bảng
H2: Khai báo biến nào? - Yêu cầu HS viết chương trình nhập mảng A
- Chỉnh sửa làm HS H3: Số chẵn số nào? - Nếu có số lượng số chẵn dãy tìm số lượng số lẻ hay khơng? - Nếu tìm cách nào?
H4: Sử dụng câu lệnh để viết? - u cầu HS hồn thành chương trình câu a
- Nhận xét, chỉnh sửa làm HS
HĐTP 2:
H1: Nêu thuật tốn kiểm tra số có phải số ngun tố hay khơng? - u cầu HS viết chương trình dựa theo thuật toán
Hd: Sử dụng câu lệnh nào?
- Yêu cầu HS hoàn thành đoạn chương trình câu b
- Nhận xét, đánh giá:
- Gợi ý để HS kết hợp hai đoạn chương trình thành chương trình hồn chỉnh cho
Var A:array [1 100] of integer;
- Trình bày lên bảng:
TL: Chia hết cho 2.
- Nếu có số lượng số chẵn dãy tìm số lượng lẻ cách: n - số lượng số chẵn
TL: If then
- Trình bày lên bảng:
- Trả lời câu hỏi: - Trình bày lên bảng:
+ Hoạt động 2: Giải tập trang 79 Sách GK Tin học lớp 11
Hoạt động GV Hoạt động HS Ghi bảng
- Yêu cầu HS liệt kê số hạng đầu dãy Fiponaci
H1: Đoạn chương trình nhập từ bàn phím số nguyện dương nào? H2: Số hạng tổng quát thứ n thế nào?
- Gợi ý: Để viết chương trình ta cần biến phụ?
H3: sử dụng câu lệnh bài này?
- Yêu cầu HS viết chương trình tìm
- Liệt kê: 0, 1, 1, 2, 3,
- Viết chương trình lên bảng:
TL: Fn = Fn-1 + Fn-2
TL: Dùng biến phụ (F1, F2)
- Suy nghĩ, trả lờ:
(8)số hạng thứ n
- Gọi HS hoàn chỉnh lại chương trình
- Nhận xét, chỉnh sửa, đánh giá làm
- Lên bảng trình bày:
+ Hoạt động 3: Củng cố (2ph)
Cấu trúc lệnh: While For Về nhà làm tập
-Ngày soạn:
Tiết PPCT: 36
KIỂM TRA TIẾT I. Mục tiêu đánh giá:
- Kiểm tra, đánh giá khả tiếp thu kiến thức, kĩ học sinh về: Các thành phần sở ngơn ngữ Pascal, phép tốn, biểu thức, câu lệnh gán, tổ chức vào/ra đơn giản, tổ chức rẽ nhánh lặp, kiểu liệu có cấu trúc đơn giản
- Đánh giá khả tổ chức chương trình Pascal với cấu trúc II. Phương pháp đề:
III. Đề
kiểm tra:
ĐỀ
KIỂM TRA HKI MÔN: TIN HỌC 11 -
-Thời gian: 45 phút (không kể thời gian giao đề)
I Phần trắc nghiệm khách quan: (Nhận biết) Chương trình dịch là:
A Chương trình dịch ngơn ngữ tự nhiên ngơn ngữ máy B Chương trình dịch ngôn ngữ máy ngôn ngữ tự nhiên
C Chương trình có chức chuyển đổi chương trình viết ngơn ngữ lập trình bậc cao thành chương trình thực máy tính cụ thể
D Chương trình có chức chuyển đổi chương trình viết ngôn ngữ máy thành ngôn ngữ bậc cao
2 (Nhận biết) Trong ngôn ngữ Pascal, từ khố VAR dùng để: A Khai báo tên chương trình
B Khai báo biến C Khai báo thư viện
Nội dung
Mức độ Chương I Chương II Chương III Chương IV Nhận biết TN Câu 1, 12 Câu 2, Câu 7, 11
TL
Thông hiểu TN Câu Câu 4, Câu
TL Câu 1
Vận dụng TN Câu 10 Câu
(9)D Khai báo
3 (Thơng hiểu) Trong ngơn ngữ lập trình Pascal, với câu lệnh sau (a biến kiểu số thực)
a:=12;
Writeln(‘KQ la:’ , a); ghi hình:
A KQ la 1.2E+01 C KQ la a
B KQ la 12 D Khơng đưa
4 (Thơng hiểu) Trong ngơn ngữ lập trình Pascal, câu lệnh sau đúng:
A If a=5 then C If a=5 then
a:=d+1; a=d+1
else a:=d+2; else a=d+2;
B If a=5 then D If a=5 then
a:=d+1 a:=d+1
else a:=d+2; else a:=d+2
5 (Vận dụng) Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau cho kết gì? T:=0;
For i:=1 to n if (i mod = 0) then T:=T + i*i; A Tính tổng số nguyên có phạm vi từ đến n
B Tính tổng số ngun có phạm vi từ đến n
C Tính tổng bình phương số nguyên chia hết cho có phạm vi từ đến n D Tính tổng số ngun có phạm vi từ đến n
6 (Nhận biết) Trong ngơn ngữ lập trình Pascal, kiểu liệu kiểu sau có miền giá trị lớn nhất?
A Byte B Word C Integer D Longint
7 (Nhận biết) Trong ngơn ngữ lập trình Pascal, Với khai báo mảng
X: Array[1 100,1 100] of integer; việc truy xuất đến phần tử sau:
A X[i],[j] B X[i][j] C X[i;j] D X[i,j]
8 (Thông hiểu) Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau đưa hình kết gì? For i:=10 to write(i, ‘ ‘);
A 10 B 10 C Đưa 10 dấu cách D Khơng đưa
9 (Thơng hiểu) Trong ngơn ngữ lập trình Pascal, để in xâu kí tự hình theo thứ tự ngược lại kí tự xâu (Vd: abcd thành dcba), đoạn chương trình sau thực việc này?
A For i:=1 to length(S) write(S[i]); B For i:=length(S) downto write(S[i]); C For i:=length(S) downto write(S]); D For i:=1 to length(S) div write(S[i]);
10 (Vận dụng) Dưới phần chương trình Pascal: Prorgam vd;
Var a,b,c,d: integer; Begin
Readln(a,b,c,d); ………
Writeln(5*(a+b)/2:c+1:5, 10*(a-b)/2:c+d:5); ………
(10)Giả sử nhập liệu sau:
Sau chạy chương trình ta thu kết gì?
A 20 B 20 -10 C -2 D -2
-10
11 (Nhận biết) Trong ngơn ngữ lập trình Pascal, khai báo khai báo sau sai khai báo xâu kí tự?
A S: string B X1: string[100] C S: string[256] D X1: string[1] 12 (Nhận biết) Xác định tên biến đúng:
A 1hoten B Ho ten C 123456 D Ho_ten
II Phần tự luận:
1 (Thơng hiểu) Cho chương trình sau: Program vidu;
Var a,S,P: integer;
Write(‘Do dai canh a:’); Readln(a);
S:=a*a; P:=4*a;
Writeln(‘S=’, S:4); Writeln(‘P=’, P:4);
a Tìm sửa lỗi cú pháp chương trình b Cho biết chương trình thực cơng việc gì?
2 (Vận dụng) Viết chương trình tìm giá trị lớn dãy số nguyên IV Đáp án - Biểu điểm:
- Phần trắc nghiệm: câu trả lời đúng: 0,5điểm
1C 2B 3A 4B 5C 6D 7D 8D 9B 10B 11C 12D
- Phần tự luận + Câu 1a: điểm
(11)Ngày soạn:
Tiết PPCT: 37
Đ14 kiểu liệu tệp
Đ15 thao tác với tÖp
I-Mục tiêu:
Kiến thức:
Hs nắm đặc điểm kiểu liệu tệp
Biết hai cách phân loại tệp, khỏi nim cú cấu trúc v tà ệp văn Hai thao tác tệp
Biết bớc làm việc với tệp:gắn tên cho biến tệp, mở tệp, đọc/ghi tệp, đóng tệp Biết khai báo biến tệp thao tác với tệp văn
BiÕt sư dơng mét sè hµm vµ thđ tơc chn lµm viƯc víi tƯp + Biết hai cách phân loại tệp, khái niệm tệp cấu trúc tệp văn + Hai thao tác với tệp
+ Biết bước làm việc với tệp: gắn tên tệp cho biến tệp, mở tệp, đọc/ghi tệp, đóng tệp + Biết khai báo biến tệp
+ Sử dụng số hàm thủ tục chuan rlàm việc với tệp
Kĩ năng:
-Khai báo tệp văn
-Sử dụng số hàm thủ tục chuẩn làm việc với tệp
Thái độ
Hs thấy cần thiết tiện lợi kiểu liệu tệp II - Đồ dung dạy học:
(12)III - Hoạt động dạy học
HĐ GIÁO VIÊN HĐ HỌC SINH NỘI DUNG
Hoạt động Đặt vấn đề(3’) Sau chạy chương trình trước ta thấy kết in hình muốn sử dụng kết sau khơng Do ta có kiểu liệu tệp
Hoạt động Đặc điểm của kiểu liệu tệp.(7’)
Hỏi: Các kiểu liệu trước lưu trữ nhớ nào? Khi tắt máy điện liệu lưu trữ nhớ nào?
Để lưu giữ liệu lâu dài nhằm khai thác, xử lí thơng tin ta phải lưu nhớ ngồi thông qua kiểu liệu tệp Yêu cầu học sinh đọc sách giáo khoa nhắc lại đặc điểm kiểu liệu tệp?
Hoạt động 3.Phân loại tệp và thao tác với tệp(4’)
Có loại tệp( theo cách tổ chức liệu), trình bày khái niệm loại tệp?
Giới thiệu cho HS biết hai cách phân loại tệp
Có hai thao tác làm việc với tệp ghi liệu vào tệp đọc liệu từ tệp
Hoạt động Thao tác với tệp(5’)
Yêu cầu HS nhắc lại thao tác làm việc với tệp Giới thiệu cấu trúc chung khai báo biến tệp giải thích Khai báo - Với tệp văn :
VAR <Tên biến tệp> : TEXT;
Ví dụ: yêu c ầu học sinh khai báo t ệp
Thao tác với tệp
Các thao tác với tệp chia thành bốn nhóm :
Gán tên tệp; Mở tệp;
Trả lời: RAM
Dữ liệu
Không liệu tắt máy
Dung lượng liệu lưu trữ lớn
Có loại tệp:tệp có cấu trúc tệp văn tệp văn tệp mà liệu ghi dạng kí tự theo mã ASCII tệp có cấu trúc: tệp mà thành phần tổ chức theo cấu trúc định
Hai thao tác tệp ghi liệu vào tệp đọc liệu từ tệp
Var a:text;
Đ14 kiểu liệu tệp
Vai trò kiểu tệp Dữ liệu kiểu tệp có đặc điểm sau: + Được lưu trữ lâu dài nhớ (đĩa từ, CD, ) không bị tắt nguồn điện vào máy
+ Lượng thông tin lưu trữ tệp lớn phụ thuộc vào dung lượng đĩa
2 Phân loại tệp thao tác với tệp
Hai cách phân loại tệp: Theo cách tổ chức liệu -tệp văn
-tệp có cấu trúc
Theo cách thức truy cập -tệp truy cập -tệp truy cập trực tiếp
Hai thao tác tệp ghi liệu vào tệp đọc liu t
Đ15 thao tác với tệp
1.Khai báo tệp văn :
VAR <Tên biến tệp>: TEXT; Vd Var f : text;
2.Gán tên tệp :
(13)HĐ GIÁO VIÊN HĐ HỌC SINH NỘI DUNG
Vào/Ra liệu; Đóng tệp
Hoạt động 4.1 Gán tên tệp(4’)
Để thao tác với tệp, trước hết phải gán tên tệp cho biến tệp câu lệnh :
ASSIGN(< Tên biến tệp>,<Tên tệp>);
Trong Tên tệp biến xâu xâu
Ví dụ Giả thiết có biến xâu MYFILE cần gán biến tệp F2 với tệp có tên DULIEU.DAT Việc gán tên tệp thực câu lệnh ?
Ví dụ Để chuẩn bị thao tác với tệp có tên INP.DAT thư mục gốc đĩa C: ta dùng câu lệnh sau để gắn với tệp F3?
Hoạt động 4.2 Mở tệp(10’)
Tệp dùng để chứa kết liệu vào Trước mở tệp, biến tệp phải gán tên tệp thủ tục ASSIGN
Câu lệnh mở tệp để ghi kết có dạng :
REWRITE(<Tên biến tệp>); Khi thực lệnh REWRITE(F3), thư mục gốc C:\ chưa có tệp KQ.DAT, tệp tạo với nội dung rỗng Nếu tệp có, nội dung bị xố để chuẩn bị ghi thơng tin
Để chuẩn bị đọc liệu từ tệp có ta mở tệp câu lệnh :
RESET(<Tên biến tệp>); Hoạt động 4.3 Đọc/ghi tệp (6’)
Tệp định kiểu mở thủ tục REWRITE ghi liệu thủ tục WRITE Câu lệnh ghi có dạng :WRITE(<Tên biến tệp>,<Tên Biến >);
Assign(f1, ‘b1.inp’); Rewrite(f1);
Assign(f1, ‘b1.out’); Reset(f1);
Readln(f,x1,x2);
Đọc liệu từ biến tệp f,đặt giá trị vào hai biến x1 x2
Writeln(f, ‘hieu la’,x1-x2); Ghi vµo biÕn tƯp f hai tham số dòng chữ hieu la giá trị x1-x2 Học sinh ghi
Close(f1); Eof(f1);
Vd1
MYFILE := 'DULIEU.DAT'; ASSIGN(F2,MYFILE);
ASSIGN(F2,'DULIEU.DAT'); Vd2
MYFILE := 'C:\INP.DAT'; ASSIGN(F3,MYFILE); 3.Mở tệp :
Để đọc : RESET(<Tên biến tệp>);
Để ghi : REWRITE(<Tên biến tệp>);
Ví dụ
TF := 'C:\KQ.DAT'; ASSIGN(F3,TF); REWRITE(F3);
Ví dụ
Để đọc liệu từ tệp DL.INP ta mở tệp : ASSIGN(F1, 'DL.INP'); RESET(F1);
4.Đọc/ghi tệp :
Đọc :
READ(<Tên biến tệp>,<danh sách biến>);
Ghi :
WRITE(<Tên biến tệp>, <danh sách kêt quả>);
Ví dụ 1
Lệnh ghi giá trị biến A
vào tệp gắn với biến tệp F3 : WRITE(F3,A);
Ví dụ
Lệnh đọc giá trị từ tệp gắn với biến tệp F1 gán cho biến C :
READ(F1,C); 5.Đóng tệp
Sau làm việc xong phải đóng tệp câu lệnh :
CLOSE(<Tên biến tệp>); Ví dụ: CLOSE(F1);
CLOSE(F3);
Một số hàm thủ tục chuẩn thường dùng thao tác tệp
(14)HĐ GIÁO VIÊN HĐ HỌC SINH NỘI DUNG
Nếu tệp mở thủ tục RESET đọc thơng tin Câu lệnh đọc có dạng: READ(<Tên biến tệp>,<Tên biến >);
Yêu cầu học sinh cho ví dụ giải thích
Hoạt động 4.4 Đóng tệp (3’) Sau làm việc xong với tệp cần phải đóng tệp Việc đóng tệp đặc biệt quan trọng sau ghi thông tin vào tệp Câu lệnh đóng tệp có dạng : CLOSE(<Tên biến tệp>); Một tệp, sau đóng mở lại Khi mở lại tệp, dùng biến tệp cũ khơng cần thiết phải dùng thủ tục ASSIGN gán lại tên tệp
Hoạt động 4.5 Một số hàm và thủ tục chuẩn thường dùng trong thao tác tệp(2’)
Giới thiệu HS biết hai hàm chuẩn ý nghĩa
tệp>); Cho giá trị True trỏ tệp tới cuối tệp Hàm lơgíc EOFLN(<Tên biến tệp>) Cho giá trị True trỏ tệp tới cuối dßng
IV-Củng cố
Nêu đặc điểm kiểu liệu tệp
Hãy cho biết khác biệt tệp định kiểu tệp văn Cho biết thao tác làm việc với tệp
Sơ đồ làm việc với tệp dùng để nhập thông tin phải có lệnh nào? Các thao tác với tệp mơ tả hình16
Ghi tệp:Gán tên tệp,tạo tệp mới, ghi thơng tin, đóng tệp Đọc tệp: Gán tên tệp,mở tệp, đọc thơng tin, đóng tệp
ASSIGN(<Tªn biÕn tƯp>,<Tªn tƯp>);
REWRITE(<Tªn biÕn tƯp>); RESET(<Tªn biÕn tƯp>);
WRITE(<Tªn biÕn tƯp>,<ds ket qua>);
Ghi §äc
(15)CLOSE(<Tªn biÕn>); tƯp>);
(16)Ngày soạn: Tiết PPCT: 38
Bài 16: VÍ DỤ LÀM VIỆC VỚI TỆP I: Mục tiêu:
1 Kiến thức:
- Củng cố lại kiến thức học tệp 14, 15 chương V thơng qua ví dụ
2 Kỹ năng:
- Nhận biết cách hoạt động tệp
- Biết sử dụng thủ tục hàm liên quan để giải toán - Nắm chức thủ tục hàm để thao tác với tệp II Chuẩn bị GV HS:
- GV: Giáo án, SGK, sách GV, máy chiếu, sách tập, máy tính có soạn sẵn ví dụ - HS: Sách GK
III Phương pháp: - Đặt vấn đề - Thuyết trình
- Diễn giải, dùng bảng để ghi lại chi tiết quan trọng ví dụ IV Tiến trình học.
* Hoạt động 1: Kiểm tra cũ giới thiệu (7’) - Mục tiêu: + Ôn lại kiến thức học 14, 15
+ Vận dụng để giải vấn đề cụ thể thực tế - Các bước tiến hành:
Hoạt động thầy Hoạt động trò Nội dung
1 Nhắc lại kiến thức cũ.
- Gọi HS nhắc lại hàm thủ tục liên quan đến tệp
- Gọi HS khác nhận xét bổ sung cho đầy đủ
- Nhận xét chung ý kiến HS trình bày
2 Giới thiệu mới
- Nêu lên vai trò tệp việc xử lý lưu trữ thông tin, áp dụng vào thực tế ( Sơ lược VD1)
- HS đứng dậy trả lời câu hỏi
Var <tên biến tệp>:text; Assign(<biến tệp>,<tên tệp>);
Rewrite(<biến tệp>);
- Nhận xét bổ sung thêm hàm, thủ tục còn thiếu
- HS Lắng nghe lời giảng GV
- HS hướng theo dẫn dắt GV để vào VD
- Ghi lại hàm thủ tục mà HS nêu
- Bổ sung thiếu sót HS1
- Đánh số thứ tự hàm thủ tục ghi bảng
* Hoạt động : Tìm hiểu VD1 VD2 (34’)
(17)- Theo dõi VD1
- Lắng nghe hướng dẫn GV
- HS trả lời : Cần tổ chức lưu trữ tệp dạng văn - HS trả lời :
Khai báo tệp Gắn tên tệp
Mở tệp để đọc liệu Hiện kết hình Đóng tệp
- HS trả lời : Các hàm sử dụng là: Var Assign Reset While do Eof Read Writeln Close
- HS trả lời: Trả kết True trỏ cuối tệp
- Khơng, khơng biết trước số lượng phần tử tệp - Lắng nghe giải thích thầy
- Theo giỏi trình thực GV
- Theo dõi VD SGK - HS lắng nghe lời giảng GV
1 Tìm hiểu VD 1.
- Gọi HS đọc VD1
- Nhấn mạnh điểm quan trọng cần lưu ý VD1
- Gợi ý cách giải toán, để giải bài toán ta cần phải nắm cơng thức tính khoảng cách điểm
- Nhắc lại cơng thức tính khoảng cách điểm mặt phẳng toạ độ
- ? Trong VD ta cần tổ chức lưu trữ liệu tệp dạng ?
- ? Các thao tác liên quan đến tệp sử dụng VD gồm ?
- ?Các hàm thủ tục sử dụng VD ?
- ?Hàm Eof(<biến tệp>) có chức ?
- ?Có thể thay lệnh While do lệnh For to không ? - Kết luận lại vấn đề nêu
- Thực chương trình cho HS thấy kết
2 Tìm hiểu VD2.
- Gọi HS đọc VD2
- Nhắc lại cơng thức tính địên trở tương đương điện trở mắc song song - Gọi HS trình bày cách tính điện trở tương đương điện trở mắc hình đến
- Ghi lại cơng thức tính khoảng cách điểm lên bảng để HS nắm rõ
Var <tên biến tệp>: text; Assign(<biến tệp>, <tên tệp>);
Reset(<biến tệp>); While do
Eof(<biến tệp>);
Read(<biến tệp>,<DS biến>); Writeln(<biến tệp>);
Close(<biến tệp>);
- Trình bày nội dung CT lên bảng
- Ghi lại cơng thức tính điện trở tương đương điện trở mắc song song
(18)- HS nhìn lên bảng để theo dõi
- Theo dõi nội dung CT VD2 SKG
- HS trả lời: Dùng để lưu kết điện trở tương đương điện trở mắc theo cách hình vẽ
- Vì CT dùng biến tệp f1và f2 nên ta phải dùng hàm Close để đóng tệp
- Nhận xét sửa sai
- Cho HS đọc qua nội dung CT VD2
- ? Mảng a dùng để làm gì? - ? Dịng lệnh For to có ý nghĩa gì?
-? Tại phải dùng hàm Close?
- Tổng kết lại CT VD2 - Yêu cầu HS tìm hiểu lại VD2 qua hướng dẫn lớp
- Bổ sung thêm cho hoàn chỉnh
* Hoạt động 3: Củng cố kiến thức học chương V.(3) - Những nội dung học
+ Các thao tác xử lý tệp:
Gán tên tệp Tạo tệp Mở tệp
Đọc, ghi liệu vào tệp Đóng tệp
* Hoạt động 4: Dặn dò.(2)
(19)Ngày soạn:
Tiết PPCT: 40 CHƯƠNG VI – CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CĨ CẤU TRÚC
Bài 17: CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI (Tiết 1) I Mục đích yêu cầu:
+ Biết CTC khối lệnh nhằm giải tốn để góp phần giải toán lớn chương trình
+ Biết viết nhứng chương trình dài, phức tạp việc sử dụng CTC cần thiết + Biết lợi ích việc sử dụng CTC
II Chuẩn bị:
Máy chiếu bảng phụ viết sẵn chương trình tinh_tong khơng sử dụng chương trình sử dụng chương trình
III Nội dung:
Hoạt động GV Hoạt động HS Nội dung ghi bảng
+ Hoạt động 1:(5’) Đặt vấn đề:
Các chương trình giải tốn phức tạp thường dài, gồm nhiều lệnh, đọc khó hình dung chương trình thực cơng việc việc hiệu chỉnh chương trình khó khăn
Như làm toán phức tạp dễ đọc, dễ hiểu, dễ hiệu chỉnh, dễ nâng cấp?
Do ta nghiên cứu vấn đề CTC, để tìm hiểu CTC gì? +Hoạt động (17’)
Tỉnh tổng : an + bm + cp + dq + GV cho HS nêu ý tưởng toán
Có nghĩa chia tốn thành tốn nhỏ, làm làm mịn dần toán -> thiết kế toán từ xuống
+ GV phân tích: để giải BT MT chia chương trình thành khối, khối gồm nhiều lệnh giải tốn -> chương trình xây dựng từ CTC
+ Chương trình gì? + Giáo viên chốt lại khái niệm bảng phụ, máy
+ Nghe GV nêu vấn đề điều cần thiết phải có chương trình
+ HS nêu ý tưởng giải toán trả lời + Cho HS khác nhận xét trả lời bạn
+ Trả lời khái niệm chương trình
1.Khái niệm chương trình con
(20)chiếu viết bảng
+Hoạt động ( 17’)
+ GV dùng bảng phụ 1: tinh_tong ( không sử dụng CTC trang 92 SGK ), cho HS nhận xét đoạn chương trình
+ GV chốt lại ý: đoạn CT có đoạn lệnh tương tự
-> chương trình dài, khó theo dõi, khó hiệu chỉnh
+ Dùng bảng phụ 2: Chương trình tinh_tong có sử dụng chương trình
+ GV giải rhích : dòng lệnh: var j: integer;
tich:=1.0; for j:=1 to k tich:=tich*x
+ Để tính luỹ thừa ta viết: Luythua(a,n), luythua(b,m), Luythua(c,p), luythua(d,q)
+ Và rõ đoạn lệnh thay CTC
+ Từ điều nêu cho HS nêu ích lợi CTC
+ GV giải thích rõ ích lợi việc sử dụng CTC
+Hoạt động 4: Củng cố
1/ HS nêu khái niệm CTC, lợi ích việc sử dụng CTC
+ Chú ý bảng phụ trình chiếu, sau nhận xét
+ HS nhận xét so sánh đoạn chương trình
+ Các HS nêu lợi ích CTC
thể phân chia thành nhiều toán nhỏ, toán nhỏ phân chia thành nhiều tốn nhỏ, q trình làm “mịn” dần toán gọi cách thiết kế từ xuống Khi lập trình để giải tốn chia thành khối, khối bao gồm lệnh để giải toán đó, khối lệnh xây dựng thành CTC , sau chương trình xây dựng CTC này, cách lập trình gọi chương trình có cấu trúc
Chương trình dãy lệnh mô tả số thao tác định thực (được gọi ) từ nhiều vị trí chương trình
* Lợi ích việc sử dụng CTC
+ Tránh việc phải viết viết lại nhiều lần dãy lệnh;
+ Hổ trợ việc thực chương trình lớn;
+ Phục vụ cho trình trừu tượng hố ;
+ Mở rộng khả ngôn ngữ;
(21)Ngày soạn:
Tiết PPCT: 41
Bài 17 CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI (Tiết 2) I: Mục tiêu:
1 Kiến thức:
Biết phân biệt hai loại chương trình con: Hàm thủ tục Biết cấu trúc chương trình
Biết phân biệt tham số hình thức với tham số thực sự, biến cục với biến toàn cục
2 Kỹ năng:
- Nhận biết hai loại tham số hình thức tham số thật - Nhận biết phạm vi hoạt động biến toàn cục, biến cục - Cách thực chương trinh
Thái độ:
- Phát huy tinh thần học tập theo nhóm. II Đồ dùng dạy học:
-GV: Bảng phụ, máy chiếu(nếu có) -HS: Sách GK, sách tập
III Phương pháp: -Đặt vấn đề -Thuyết trình
-Diễn giải, dùng bảng để ghi lại chi tiết quan trọng ví dụ -Phát huy tính sáng tạo học sinh
IV Tiến trình học.
Hoạt động thầy Hoạt động trò Nội dung
* Kiểm tra kiến thức cũ.
- Gọi HS :
Câu 1: Trình bày khái niệm chương trình gì?
Câu 2: Mục đích sử dụng chương trình gì?
-GV nhận xét cho điểm
*Giới thiệu mới
ĐVĐ: Chúng ta biết chương trình gì? Lợi ích việc sử dụng chương trình lập trình Nhưng ta chưa biết chương trình chương trình có cấu trúc nào? Và phân loại nào?
- HS đứng dậy trả lời câu hỏi
2 Phân loại cấu trúc của chương trình con.
(22)Hoạt động thầy Hoạt động trị Nội dung
-Trong nhiều ngơn ngữ lập trình chương trình phân làm mấy loại?
-Trong ngôn ngữ pascal em cho biết số hàm thủ tục chuẩn mà em biết?
-Xét hàm sin(x)
Với x=∏/6 giá trị hàm sin(x)
cho kết ?
GV nhận xét : Sau thực tính tốn hàm sin(x) với x= ∏/6
cho giá trị 1/2
Vậy em cho biết hàm có đặc điểm ?(hay hàm ?).
-Xét thủ tục Writeln, Writeln(‘‘xin chao’’)
Thủ tục Writeln(‘xin chao’) làm gì ? cho kết ? có trả về giá trị không ?.
Vậy em cho biết thủ tục có đặc điểm ?(hay hàm ?).
ĐVĐ : Trên sở phân loại hàm thủ tục ta tìm hiểu cấu trúc hàm thủ tục (Chương trình con) tổ chức ?
-Các em cho biết chương trình gồm phần ?(kiến thức củ).
-Trong chương trình cấu trúc gồm phần ? -Về chương trình và chuơng trình có tương tự nhau khơng ?
-HS trả lời câu hỏi.
-HS trả lời câu hỏi:
+ Hàm: Sin(x), sqrt(x),length(x) + Writeln, readln,
-HS trả lời câu hỏi:
Sin(x)=1/2
-Học sinh trả lời
-Học sinh trả lời
-Học sinh trả lời:
[<Phần khai báo>] <Phần thân>
-Học sinh trả lời:
<Phần đầu> [<Phần khai báo>]
+Hàm:
Là chương trình Thực số thao
tác
Trả lại giá trị qua tên hàm
+Thủ tục:
Là chương trình Thực số thao
tác
KhơngTrả lại giá trị qua tên thủ tục
b Cấu trúc chương trinh con
(23)Hoạt động thầy Hoạt động trò Nội dung
-Phần đầu dùng để làm ?
-Phần Khai báo dùng để làm gì ?
-Phần thân dùng để làm ?
ĐVĐ :Bây ta tiếp tục tìm hiểu biến khai báo phạm vi hoạt động chương trình chương trình
Xét ví dụ : Tính luỹ thừa : luythua= xk tên chương trình đặt luythua, tên biết chưa liệu vào x, k Vậy tính xk ta viết luythua(x,k) Khi x, k tham số hình thức
-Vậy tham số hình thức ?
<Phần thân> -Học sinh trả lời.
-HS trả lời
-HS trả lời
-HS trả lời
-HS trả lời
gồm phần: <Phần đầu> [<Phần khai báo>] <Phần thân>
+Phần đầu:
Để khai báo tên hàm thủ tục
Nếu hàm phải khai báo kiểu liệu chi giá trị trả hàm
Nhất thiết phải có
+Phần khai báo:
Khai báo biến cho liệu vào/ra, biến dùng chương trình
+Phần thân:
Gồm dãy lệnh thực để từ iệu vào/ra ta nhận liệu hay kết qủa mong muốn
*Khái niệm biến:
- Tham số hình thức: gồm
biến khai báo cho liệu vào/ra
(24)Hoạt động thầy Hoạt động trò Nội dung
ĐVĐ : Đối biến cục bộ, ,biến tồn cục phạm vi hoạt động ?
ĐVĐ : Sau có chương trình con, muốn thực chuơng trình ta làm ?
-Hãy cho ví dụ lệnh gọi CTC ?
Xét ví dụ :CTC luythua(x,k) với x,k tham số hình thức
Với biến : a =2, b=3
Lệnh gọi CTC Luythua(a,b) tham số hình thức x,k nhận giá trị tương ứng tham số thực a,b
-Học sinh đọc sách GK trả lời
-HS trả lời
Ví dụ: sqrt(255)
- Biến toàn cục: Gồm biến
khái khai báo chương trình
*Phạm vi hoạt động các biến:
-Biến cục bộ:
Chỉ sử dụng chương trình cuả mà thơi
Khơng thể sử dụng biến cục cuả chương trình cho chương trình chương trình khác
-Biến tồn cục:
Được sử dụng chương trình sử dụng chương trình
c Thực chương trình con:
-Để thực gọi chương trình ta thực lệnh theo cú pháp sau
Cú pháp:
<tên chương trình con>(<tham số thực sự>)
Trong đó: tham số thực hằng, biến chứa liệu vào/
-Khi thực chương trình tham số hình thức dùng để nhập liệu vào tham số hình thức nhận giá trị tham số thực tương ứng, tham số hình thức dùng để lưu trữ liệu trả giá trị cho tham số thực tương ứng
*Cũng cố kiến thức: Những nội dung học:
(25)-Cấu trúc chương trinh con. -Biến cục bộ, biến tồn cục.
-Tham sơ hình thức, tham số thật sự. -Cách gọi chương trinh con.
Ngày soạn: Tiết PPCT: 42
Bài 18: VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON I/ Mục tiêu:
- Về kiến thức:
+ Nhớ cấu trúc hàm, cách sử dụng hàm
+ Phân biệt hai loại chương trình (thủ tục hàm) + Xác định biến toàn cục biến cục
- Về kỹ năng:
+ Nhận biết thành phần đầu hàm
+ Nhận biết câu lệnh sử dụng hàm chương trình tham số thực - Về tư trình độ:
+ Tiếp tục rèn luyện, thảo luận làm việc theo nhóm II/ Chuẩn bị giáo viên học sinh
- Giáo viên: Giáo án, bảng phụ - Học sinh: Ghi chép đầy đủ 2/ Phương pháp:
- Học sinh nghe giảng, thảo luận trả lời câu hỏi giáo viên đưa - Giáo viên thuyết trình, đặt câu hỏi cho học sinh
III/ Tiến trình tiết dạy:
Hoạt động 1: Kiểm tra cũ giới thiệu
Hoạt động giáo viên Hoạt động học sinh Nội dung ghi bảng Câu hỏi: Cho ví dụ cấu
trúc thủ tục?
Nêu khác tham số giá trị tham số biến? GV: Gọi học sinh lên trả lời? Có loại chương trình Thủ tục (Procedure) hàm (Function) Thủ tục tìm hiểu tiết trước Bầy ta tiếp tục tìm hiểu Hàm
- Em kể tên hàm mà học cho biết cách sử dụng chúng?
HS lên bảng trả lời - HS nhận xét
(26)Hoạt động 2: Nội dung
Hoạt động giáo viên Hoạt động học sinh Nội dung ghi bảng - <tên hàm> người dùng
tự đặt
- Cũng giống thủ tục [<danh sách tham số>]: khơng cần thiết hàm khơng có tham số
- Em nhắc lại kiểu liệu học?
Chương trình trình bày bảng phụ
-Trong ví dụ có hàm?
- Hàm UCLN(x,y): dùng để làm gì?
- Chỉ lệnh gán giá trị cho tên hàm?
- Em cho biết giống khác hàm thủ tục?
- Tổng hợp rút kết luật chung
- Các kiểu liệu: integer, real, char, boolean, string
- Có hàm UCLN - Tính ước chung lớn hai số x, y
- UCLN:= x;
- Đều chương trình - Khác: thân hàm phải có lệnh
II/ Dạng Hàm (Function) 1/ Cấu trúc:
Function <tên hàm>[<danh sách tham số>]: <kiểu liệu>; [khai báo biến];
Begin
[<dãy lệnh>] End;
- <Kiểu liệu>: Kiểu liệu trả lại hàm kiểu integer, real, char, boolean, string
Vd: Function tong(x,y: integer): integer;
2/
Sử dụng hàm :
- Giống hàm chuẩn, viết tên hàm gọi thay tham số hình thức tham số thực tương ứng
- Lệnh gọi hàm tham gia vào biểu thức tốn hạng Ví dụ: A:= 8*UCLN(x,y)-3; Chú ý: Trong thân hàm phải có lệnh gán giá trị cho tên hàm
<tên hàm>:= <biểu thức>; Ví dụ 1:
- Chương trình thực rút gọn phân số, sử dụng hàm tính ước chung lơn số
3/ Phân biệt hàm thủ tục:
a/ Giống nhau:
- Là chương trình con, có cấu trúc giống chương trình
- Đều chứa tham số, tuân theo quy định khai báo
b/ Khác nhau:
- Tên hàm phải có kiểu liệu - Trong thân hàm phải có lệnh gán giá trị cho tên hàm
(27)- Dựa vào ví dụ chi đâu biến toàn cục, biến cục bộ? chúng khai báo vị trí nào?
Chương trình trình bày bảng phụ
- Phân tích cho hoc sinh biết ý tưởng thuật tốn - Chỉ biến sử dụng chương trình, phân biệt biến cục bộ, biến tồn cục, khai báo vị trí chương trình ? - Nêu tên hàm, giá trị kết hàm thuộc kiểu liệu nào?
- Hàm sử dụng lần?
- Biến toàn cục là: Tuso, mauso, a Được khai báo chương trình
- Biến cục bộ: x, y Được khai báo chương trình
- Biến sử dụng gồm biến
- a, b vừa biến toàn cục vừa biến cục bộ, c biến toàn
- Tên hàm Min, giá trị kết thuộc kiểu liệu real
- Hàm sử dụng lần
- Biến toàn cục biến khai báo chương trình - Biến cục biến khai báo chương trình Ví dụ 2:
Chương trình tìm số nhỏ số nhập từ bàn phím
Hoạt động 3: Cũng cố:(4’)
- Nhấn mạnh lại cách khai báo hàm, phân biệt hàm thủ tục - Phân biến toàn cục biến cục
Bài tập nhà: (3’)
Function tim(m,n: integer); Begin
r:=m mod n;
If r= then tim:=n; Else
Tim:=tim(n,r); End;
1 Khai báo biến, sửa lỗi cho đoạn chương trình trên? Đoạn chương trình thực cơng vic gỡ?
-Ngày soạn: 03/03/08
ppct: Bài thực hành số 6
i Mục Tiêu
1 KiÕn thøc:
(28)2 Kü năng:
- Rèn luyện kỹ xử lý xâu việc tạo hiệu ứng cho máy chạy hình - Nâng cao kỹ viết sử dụng chơng trình
II dựng dy hc
1 Chuẩn bị giáo viên:
- Mỏy vi tính, tổ chức phịng máyđể học sinh có đợc kỹ tronh việc tổ chức sử dụng chơng trình lập trình
2 Chuẩn bị học sinh: - Sách giáo khoa
III Hoạt động dạy học
1 Hoạt động 1: Tìm hiểu việc xây dựng hai thủ tục catdan(s1, s2) cangiua(s). a Mục tiêu:
- nắm đợc chức hai thủ tục catdan(s1, s2) cangiua(s) Biết đợc ý nghĩa cảu tham số chơng trình
b Néi dung: Thđ tơc catdan
Type str79 = string[79];
Procedure catdan(s1 : str79; var s2 : str79); Begin
S2 := copy(s1 , , length(s1) - 1) + s1[1]; End;
Thñ tôc cangiua
Procedure cangiua( var s : str79); Var i,n : integer;
Begin
n:= length(s); n:= (80-n)div 2; for i:= to n
s:= ‘ + s end;
c Các bớc tiến hành:
Hoạt động giáo viên Hoạt động học sinh
1 T×m hiĨu hai thđ tơc catdan (s1, s2) vµ cangiua (s)
- ChiÕu néi dung thủ tục catdan (s1, s2); - Hỏi: Đầu vào đầu thủ tục này? - Hỏi: Chức thủ tục gì? - Yêu cầu học sinh cho mét vÝ dơ minh ho¹ - ChiÕu néi dung thủ tục: cangiua(s);
- Hỏi: Đấu vào thủ tục? - Thủ tục thực công việc gì?
- Giáo viên ý: Có thể nhắc học sinh không khai báo s tham biến thủ tục hiệu lực lệnh đa s nàm hình không nằm thủ tục
2 Tìm hiểu chơng trình câu b, sách giáo khoa, trnag 103, 104
- Chiếu chơng trình lên bảng - Hỏi: Chức chơng trình
- Giíi thiƯu cho häc sinh c¸c thđ tơc chuÈn : gotoxy (x,y); delay(n); vµ keypressed;
- Thực chơng trình để giúp học sinh thấy kết chơng trình
1 Quan s¸t thđ tơc catdan() trả lời câu hỏi giáo viên
- Vào: Xâu kí tự s1 - Ra: Biến xâu kí tù s2
- Thực việc tạo xâu s2 từ xâu s1 việc chuyển kí tự thứ đến vị trí cuối xâu
- S1= abcd S2 = bcda - Quan sát, suy nghĩ trả lời
- Đầu vào xâu kí tự S không qua 79 kí tự
- Thủ tục thực thêm vào trớc xâu s số kí tự tự trắng để đa s hình kí tự S ban đầu đợc dịng gồm 80 kí tự
2 Quan sát chơng trình bảng theo dõi dẫn dắt giáo viên
(29)- Quan sát hình để đối chiếu với kết mà học sinh tự suy luận tính đợc 2 Hoạt động 2: Rèn luyện kĩ lập trình:
a Mơc tiªu:
- Học sịnh vận dụng đợc hiểu biết chơng trình con, thuật tồn đợc cung cấp để giải toán tổng quát
b Néi dung:
- Viết chơng trình nhập xâu kí tự đa dịng chữ chạy dịng chơng trình quy định
- Nội dung chơng trình giống nh chơng trình câub, SGK, trang 10 c Các bớc tiến hành:
Hoạt động giáo viên Hoạt động học sinh
1 Tìm hiểu yêu cầu đề
- Chiếu nội dung yêu cầu lên bảng
- Yờu cầu học sinh tìm vấn đề ny
- Yêu cầu học sinh lập trình máy
- Yêu cầu học sinh thực chơng trình nhập liệu test
- Đánh giá kết lập trình học sinh
1 Quan sát yêu cầu bảng
- V c bản, giống nh nhiệm vụ mà câu b làm Chỉ khác chơng trình câu b ln cho xâu kí tự chạy dịng 12, cịn xâu kí tự phải chạy dịng Vì phải truyền tham số quy định dòng chạy cho th tc
- Độc lập viết chơng trình vào máy báo cáo kết thử nghiệm
- Nhập liệu theo test giáo viên báo cáo kết
IV Đánh giá cuối bài: Câu hái vµ bµi tËp vỊ nhµ
- Viết thủ tục chaychu ( s,dong) nhận tham số xâu S gồm khơng qua 79 kí tự biến ngun Dong In hình dịng chữ xác định S chạy dịng Dong viết chơng trình thực có sử dụng thủ tục
- ChuÈn bị cho thực hành số 7: Xem trớc néi dung cđa bµØ thùc hµnh sè 7, SGK, trang 105
-Ngày soạn:
PPCT: Bài thùc hµnh sè 7
I MỤC TIÊU:
1 Kiến thức:
Củng cố lại kiến thức chương trình con: Thủ tục, hàm, tham số biến tham số giá trị, biến toàn cục biến cục
2 Kỹ năng:
Sử dụng chương trình để giải trọn vẹn tốn máy tính II ĐỒ DÙNG DẠY HỌC:
1 Chuẩn bị giáo viên:
Máy vi tính, tổ chức phịng máy để HS có lỹ việc tổ chức sử dụng chương trình lập trình
2 Chuẩn bị học sinh:
Đọc trước tập thực hành theo yêu cầu giáo viên III HOẠT ĐỘNG DẠY VÀ HỌC:
1 Hoạt động 1: Tìm hiểu việc xây dựng hàm thủ tục chương trình, thực việc liên quan đến tam giác
a Muc tiêu:
HS biết hàm thủ tục chương trình, hiểu chức chương trình con, tính đầu vào đầu chương trình
b Nội dung:
(30)- Function dientich(var R: Tamgiac): real;
- Procedure tinhchat(var R: Tamgiac; var deu,can,vuong: boolean); - Procedure hienthi(var R: Tamgiac);
- Funtion kh_cach(P,Q: Diem): real;
c Các bước tiến hành:
Hoạt động GV Hoạt động HS
- Đưa toán: Nhập toạ độ đỉnh tam giác, tính diện tích, chu vi, hiển thị tính vng, cân tam giác
- GV định hướng cho HS phải xây dựng kiểu liệu để giải toán SGK
- Hỏi: Yêu cầu HS phân biệt hàm thủ tục
- GV xác hố kết quả, nhấn mạnh ý: Một chương trình dùng chương trình khai báo trước thân chương trình
- Dẫn dắt, giải thích cho HS hiểu ý nghĩa, dạng chương trình con, cách dùng tham số (tham biến, tham trị), thứ tự khai báo, đầu vào, đầu chương trình sử dụng để giải toán
+ Procedure daicanh(R: Tamgiac; var a,b,c: real);: Nhận đầu vào biến R mô tả tam giác đầu độ dài cạnh a,b,c
+ Function chuvi(var R: Tamgiac): real;: Cho giá trị chu vi tam giác R
+ Function dientich(var R: Tamgiac): real;: Cho giá trị chu vi tam giác R
+ Procedure tinhchat(var R: Tamgiac; var deu,can,vuong: boolean);: Nhận đầu vào biến R mô tả tam giác đầu tính chất tám giác (đều, cân vuông)
+ Procedure hienthi(var R: Tamgiac);: Hiển thị toạ độ đỉnh tam giác hình
+ Funtion kh_cach(P,Q: Diem): real;: Cho giá trị khoảng cách hai điểm P, Q
- GV sử dụng máy chiếu để để hiển thị nội dung chương trình SGK lên hình cho HS quan sát, kết hợp với dùng bảng để thảo luận giải thích nội dung chương trình cách dùng chương trình chương trình Sau HS thơng hiểu chương trình, yêu cầu HS lên chạy thử cách nhập toạ độ HS kiểm tra trước
- HS nhìn bảng trả lời câu hỏi GV đưa
- Trả lời câu hỏi GV
- Trả lời câu hỏi GV đưa trình giảng
- HS lắng nghe GV giảng trả lời câu hỏi GV đưa ra:
+ Xác định đâu tham trị đâu tham biến chương trình bên
- Quan sát chương trình, dự tính chức chương trình
- Nhập vào toạ độ đỉnh tam giác, khảo sát tính chất tam giác (cân, vuông, đều) Quan sát kết hình để đối chiếu với kết tự tính
- Quan sát ghi nhớ kết để thấy hiệu ứng thay đổi tham biến tham trị
2 Hoạt động 2: Rèn luyện kỹ lập trình
(31)Viết chương trình có sử dụng chương trình để tính số lượng tam giác đều, số lượng tam giác cân số lượng tam giác vuông
b Nội dung:
- Viết chương trình, sử dụng hàm thủ tục xây dựng để giải toán sau:
Cho tệp liệu TAMGIAC.DAT có cấu trúc sau: Dịng 1: Ghi số nguyên N (1<=N<=100)
N dòng tiếp theo: dòng ghi số thực xA, yA, xB, yB, xC, yC toạ độ đỉnh A, B, C tam giác
Yêu cầu: đọc liệu từ tệp TAMGIAC.DAT, xử lý đưa kết tệp TAMGIAC.OUT gồm dòng:
Dòng 1: Ghi số lượng tam giác
Dòng 2: Ghi số lượng tam giác cân (nhưng khơng đều) Dịng 3: Ghi số lượng tam giác vuông
c Các bước tiến hành:
Hoạt động GV Hoạt động HS
- Phân tích yêu cầu để + Chiếu nội dung, yêu cầu lên bảng + Chia lớp thành hai nhóm
Nhóm 1: Nêu câu hỏi phân tích để giải tốn
Nhóm 2: Trả lời câu hỏi phân tích nhóm để tìm cách giải tốn
+ GV góp ý, bổ sung câu hỏi phân tích trả lời phân tích
- Lập trình:
+ Yêu cầu HS lập trình máy GV tiếp cận Hs để sửa lỗi cần thiết
+ Yêu cầu HS nhập liệu vào GV báo cáo kết chương trình
+ Đánh giá kết HS
- Quan sát yêu cầu + Nhóm 1: Đặt câu hỏi
Dữ liệu vào Dữ liệu
Cần sửa chỗ tỏng chương trình câu b
Thuật tốn để đếm số lượng loại hình tam giác
+ Nhóm 2: Trả lời câu hỏi phân tích Phải viết lệnh đọc đữ liệu
tệp
Ba số nguyên dương số lương loại hình tam giác ghi dịng tệp Cần thay đoạn chương trình
nhập liệu chương trình để đọc liệu từ tệp TAMGIAC.DAT
Thay đoạn chương trình in kết hình chương trình để in số nguyên dương số lượng
loại hình tệp
TAMGIAC.OUT
Thuật tốn:
Nếu deu d:= d +
Ngược lại can c:= c + Ngược lại v:= v + 1;
- Độc lập viết chương trình, thực chương trình test tự tạo
- Thông báo kết cho GV
(32)IV CỦNG CỐ KIẾN THỨC:
Nhắc lại nội dung học từ đầu chương VI : Cách xây dựng chương hàm, thủ tục, cách truyền tham biến, tham trị
V CÂU HỎI VÀ BÀI TẬP VỀ NHÀ: - Đọc đọc thêm
- Chuẩn bị
- Viết chương trình sau (dùng chương trình con):
+ Đếm in hình số nguyên tố dãy số nguyên nhập từ bàn phím
(33)Ngày soạn: PPCT: 48
BÀI 19: THƯ VIỆN CHƯƠNG TRÌNH CON CHUẨN (Tiết 1) I Mục tiêu:
+ Kiến thức:
- Giới thiệu số thư viện chương trình chuẩn cách sử dụng
+ Kĩ năng:
- Bước đầu sử dụng thư viện lập trình
- Biết khai báo sử dụng thư viện CRT, GRAPH II Đồ dùng Dạy học:
+ Giáo viên: giáo án, máy chiếu, chương trình sử dụng hàm cần giới thiệu
+ Học sinh: Sách giáo khoa
III Hoạt động Dạy - Học: + Ổn định lớp
+ Kiểm tra cũ + Tiến trình tiết dạy:
Hoạt động giáo viên Hoạt động học sinh Nội dung ghi bảng + Đặt vấn đề: Giới thiệu
thư viện chương trình ngơn ngữ lập trình
+ HĐ 1: Giới thiệu thư viện CRT
- Yêu cầu học sinh đọc sách kể tên chương trình thư viện CRT
- Trình chiếu cho chạy chương trình sau:
Program xoamanhinh; Begin
Clrscr;
Writeln(‘Xoa man hinh’); Readln;
End
- Vì xuất lỗi chạy chương trình này?
- Thêm : Uses CRT vào trước begin chạy chương trình - Chức thủ tục Clrscr ?
- Trình chiếu chương trình chứa thủ tục textcolor, yêu cầu học sinh quan sát nhận xét chức lệnh
- Trình chiếu chương trình chứa
+ Các chương trình thư viện CRT :
- Clrscr, textcolor, textbackgrond, gotoXY - Quan sát
- Chưa sử dụng thư viện CRT
- Quan sát -Xố hình - Đặt màu chữ
1/ CRT:
- Chứa thủ tục liên quan đến việc quản lí khai thác mà hình, bàn phím máy tính
- Clrscr: xố hình
(34)Hoạt động giáo viên Hoạt động học sinh Nội dung ghi bảng thủ tục textbackground, yêu cầu
học sinh quan sát nhận xét chức lệnh - Trình chiếu chương trình chứa thủ tục gotoXY, yêu cầu học sinh quan sát nhận xét chức lệnh
+ HĐ 2: Tìm hiểu thư viện Graph
- ĐVĐ: thư viện Graph chứa thủ tục liên quan đến chế độ đồ hoạ
+ Cho HS xem sách trả lời: - Các dạng liệu hiển thi hình? - Card hình có nhiệm vụ gì?
- Các tệp điều khiển đồ hoạ có chức gì?
- Khi nói đến hình phân giải 640x480 nói đến điều gì?
+ Để sử dụng thư viện đồ hoạ ta phải làm gì?
- Để khởi tạo chế độ đồ hoạ ta sử dụng thủ tục nào?
- Khi khơng sử dụng chế độ đồ hoạ ta phải làm gì?
- Đặt màu
- Đưa trỏ cột X dòng Y
- Lắng nghe
- Văn hình ảnh - Đảm bảo tương tác giữ vi xử lí hình
- Cung cấp chương trình điều khiền tương ứng với loại bảng mạch đồ hoạ
- 640 dòng 480 cột - Khởi tạo chế độ đồ hoạ - Initgraph(var driver, mode: Integer; path: string);
- Trở chế độ văn
- Textbackground(n): đặt màu
- GotoXY(x,y): đưa trỏ đến cột x dịng y hình văn
2/ Graph:
- Chứa hàm thủ tục liên quan đến chế độ đồ hoạ
a) Các thiết bị chương trình hỗ trợ đồ hoạ:
- Có hai chế độ làm việc: văn đồ hoạ
- Bảng mạch điều khiển hình thiết bị đảm bảo tương tácgiữa vi xử lí hình
b) Khởi tạo chế dộ đồ hoạ:
- Initgraph(var driver, mode: Integer; path: string);
+ Trong đó:
- driver: số hiệu chương trình điều khiển BGI
- mode: số hiệu độ phân giải
- path: đường dẫn đến tệp BGI
- CloseGraph: Kết thúc chế độ đồ hoạ
(35)Ngày soạn: Tiết thứ:
BÀI 19: THƯ VIỆN CHƯƠNG TRÌNH CON CHUẨN (TIẾT 2)
I. Mục đích yêu cầu:
- Về kiến thức: Biết số thư viện chương trình chuẩn - Về kỹ năng:
+ Khởi động chế độ đồ họa
+ Sử dụng thủ tục vẽ điểm, đường, hình trịn, hình elip, hình chữ nhật II. Chuẩn bị:
- GV: SGK, giáo án, máy chiếu Projector - HS: SGK,
III. Phương pháp: - Gợi mở, vấn đáp - Làm việc theo nhóm IV. Hoạt động dạy học:
1 Ổn định lớp: Kiểm tra sĩ số HS
2 Kiểm tra cũ: Nêu ý nghĩa số thủ tục thư viện CRT ? Nội dung dạy học:
Hoạt động 1: Khởi động đóng chế độ đồ họa:
Hoạt động Giáo Viên Hoạt động Học sinh Nội dung - Trình chiếu ví dụ vẽ đường
tròn Hãy đoạn chương trình khởi động đồ họa
- Yêu cầu học sinh nghiên cứu SGK ví dụ để nêu cấu trúc chung thủ tục khởi động đồ họa
- Giải thích thơng số thủ tục
- Muốn thoát khỏi chế độ đồ họa dùng thủ tục gì?
- Trình chiếu thêm ví dụ minh họa
- Quan sát ví dụ trả lời
- Initgraph ( driver, mode: integer, path: string)
- Closegraph - Quan sát
b) Khởi động đồ họa:
- Cấu trúc chung thủ tục khởi động đồ họa
Initgraph (driver, mode: integer, path: string);
+ Driver: số hiệu chương trình điều khiển BGI, thường gán giá trị
+ Mode: số hiệu độ phân giải
+ Path: đường dẫn đến tệp BGI
- Thủ tục kết thúc đồ họa: Closegraph Hoạt động 2: Các thủ tục vẽ điểm, đoạn thẳng
Hoạt động Giáo viên Hoạt động Học sinh Nội dung
Thủ tục Putpixel
- Trình chiếu ví dụ - Quan sát c.Các thủ tục vẽ điểm, đoạn thẳngUse graph; Begin
(36)- Cho HS nêu kết
- Gọi HS nêu cấu trúc chung thủ tục Putpixel
- Giải thích thơng số thủ tục
- Chức Putpixel ?
Thủ tục Line: - Trình chiếu ví dụ
- Cho HS nêu kết
- Gọi HS nêu cấu trúc chung thủ tục Line
- Giải thích thơng số thủ tục
- Chức Line ?
Thủ tục Lineto: - Trình chiếu ví dụ
- Cho HS nêu kết
- Gọi HS nêu cấu trúc chung thủ tục Lineto
- Giải thích thông số thủ tục
- Chức Lineto gì? Thủ tục Linerel:
- Trình chiếu ví dụ
- HS trả lời
- HS trả lời
- Quan sát
- HS trả lời
- HS trả lời
- Quan sát
- HS trả lời
- HS trả lời
- Quan sát
Initgraph ( drive, mode, ‘C: TP\BGI’); Putpixel(20,40,60); Readln;
End
- Cấu trúc chung:
Putpixel (x, y: integer; color: word);
+ x y tọa độ điểm + color màu điểm
- Chức năng: Vẽ điểm màu color hình tọa độ (x,y)
Use graph; Begin
Drive: = 0;
Initgraph ( drive, mode, ‘C: TP\BGI’); Line (20,40,30,60); Readln;
End
- Cấu trúc chung:
Line (x1,y1,x2,y2: integer)
- Chức năng: Vẽ đoạn thẳng từ điểm có tọa độ (x1,y1) đến điểm có tọa độ (x2,y2)
Use graph; Begin
Drive: = 0;
Initgraph ( drive, mode, ‘C: TP\BGI’) Lineto (20,20) Readln;
End
- Cấu trúc chung: Lineto (x,y: integer)
- Chức năng: Vẽ đường thẳng từ điểm đến điểm có tọa độ (x,y)
(37)- Cho HS nêu kết
- Gọi HS nêu cấu trúc chung thủ tục Linerel
- Giải thích thơng số thủ tục
- Chức Linerel gì?
Thủ tục Setcolor: - Trình chiếu ví dụ
- Cho HS nêu kết
- Gọi HS nêu cấu trúc chung thủ tục Setcolor
- Giải thích thơng số thủ tục
- Chức Setcolor gì?
- HS trả lời
- HS trả lời
- Quan sát
- HS trả lời - HS trả lời
Drive: = 0;
Initgraph ( drive, mode, ‘C: TP\BGI’) Linerel (10,10); Readln;
End
- Cấu trúc chung:
Linerel (dx,dy: integer)
- Chức năng: Vẽ đường thẳng nối điểm với điểm có tọa độ tọa độ cộng với gia số (dx,dy)
Use graph; Begin
Drive: = 0;
Initgraph ( drive, mode, ‘C: TP\BGI’) Lineto (20,20); Setcolor (10); Lineto (20;-20); Readln;
End
- Cấu trúc chung:
Setcolor (color: word)
- Chức năng: Đặt màu cho nét vẽ Hoạt động 3: Các thủ tục vẽ hình đơn giản thủ tục, hàm liên quan đến vị trí con trỏ.
Hoạt động GV Hoạt động HS Nội dung
Trình chiếu: ví dụ
- Cho HS nêu kết - Gọi HS nêu cấu trúc chung thủ tục Circle, Ellipse, Rectange
- Quan sát
- HS trả lời - HS trả lời
d Các thủ tục vẽ hình đơn giản Use graph;
Begin
Drive: = 0;
Initgraph ( drive, mode, ‘C: TP\BGI’) Circle (20, 20, 30);
Elipse (50,50,30,120,50,100); Rectangle (100,100,100,200); Readln;
End
- Cấu trúc chung: + Hình trịn:
Circle (x,y: integer; r:word) + Elipse:
(38)- Giải thích thơng số thủ tục
- Chức thủ tục gì?
Giới thiệu hàm xác định GTLN hình, thủ tục chuyển trỏ tới tọa độ (x, y)
- HS trả lời
Xr, Yr: word) + Hình chữ nhật:
Rectange(x1,y1,x2,y2:integer) - Chức năng:
+ Circle:Vẽ đường trịn có tâm (x,y) bán kính r
+ Elipse : Vẽ cung Elip có tâm điểm (x,y) với trục lớn xr, trục nhỏ yr, từ góc đầu StAngle đến góc cuối EndAngle + Rectange: Vẽ hình chữ nhật với (x1,y1 tọa độ đỉnh trái trên; (x2,y2) tọa độ đỉnh phải
e Các thủ tục hàm liên quan đến vị trí trỏ
- Hàm xác định GTLN cua hình: Function GetMaxX: integer;
Function GetMaxY: integer;
- Thủ tục chuyển trỏ tới tọa độ (x;y) Procedure MoveTo(x,y:integer);
Hoạt động 4:Tìm hiểu số thư viện khác
Hoạt động GV Hoạt động HS Nội dung ghi bảng
- Hãy nêu số thư viện khác Pascal?
- Chức thư viện?
- Để sử dụng thủ tục hàm chuẩn thư viện ta phải làm gì?
- Gọi HS nêu VD
- System, Dos, printer - HS trả lời
- Khai báo
- uses crt,graph;
3 Một số thư viện khác:
- System: chứa hàm sơ cấp thủ tục vào
- Dos: chứa thủ tục tạo thư mục, thiết lập hệ thống
- Printer: cung cấp thủ tục làm việc với máy in
4 Sử dụng thư viện:
- Khai báo thủ tục hàm chuẩn theo cấu trúc:
Uses unit1, unit2, ,unit n;
Hoạt động 5: Củng cố - Dặn dò - Biết số thư viện chuẩn