giao lưu ttt toán học 4 cao tuấn anh thư viện tư liệu giáo dục

95 19 0
giao lưu ttt  toán học 4  cao tuấn anh  thư viện tư liệu giáo dục

Đ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

- Phải sử dụng một chương trình dịch để chuyển đổi. - Lập trình bằng ngôn ngữ bậc cao dẽ viết hơn vì các lệnh được mã hóa gần với ngôn ngữ tự nhiên. Hoạt động 2: Tìm hiểu hai loại chươn[r]

(1)

KHÁI NIỆM LẬP TRÌNH VÀ NGƠN NGỮ LẬP TRÌNH I MỤC TIÊU

- Biết khái niệm lập trình ngơn ngữ lập trình - Biết khái niệm chương trình dịch

- Phân biệt hai loại chương trình dịch biên dịch thông dịch II ĐỒ DÙNG DẠY HỌC

1-Chuẩn bị giáo viên

- Bảng viết, sách giáo khoa, sách giáo viên, phiếu học tập

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 khái niệm lập trình ngơn ngữ lập trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Chiếu nội dung toán đặt vấn đề: Kết

luận nghiệm phương trình ax+b=0 - Hãy xác định yếu tố Input Output toán?

- Hãy xác định bước để tìm output?

- Diễn giải; Hệ thống bước gọi thuật tốn

- Nếu trình bày thuật tốn với người nước ngồi, em dùng ngơn ngữ để diễn đạt?

- Nếu diễn đạt thuật tốn cho máy hiểu, em dùng ngơn ngữ nào?

- Diễn giải: Hoạt động để diễn đạt thuật tốn thơng qua ngơn ngữ lập

1 Quan sát nội dung toán theo dõi yêu cầu giáo viên

- Input : a, b

- Output : x=-b/a, Vô nghiệm, Vô số nghiệm

Bước : Nhập a,b

Bước : Nếu a<>0 kết luận có nghiệm x=-b/a

Bước : Nếu a=0 b<>0, kết luận Vô nghiệm

Bước : Nếu a=0 b=0, kết luận Vô số nghiệm

- Ngôn ngữ Tiếng Anh

(2)

trình gọi lập trình

- Yêu cầu học sinh đọc sách giáo khoa cho biết khái niệm lập trình

- Hỏi: kết hoạt động lập trình? Phát phiếu học tập Yêu cầu em ghi loại ngôn ngữ lập trình mà em biết (Sử dụng kỹ thuật động não viết)

- Đọc nội dung số phiếu học tập cho lớp nghe

- Hỏi: Em hiểu ngôn ngữ máy, hợp ngữ ngôn ngữ bậc cao?

- Hỏi: Làm để chuyển chương trình viết từ ngơn ngữ bậc cao sang ngôn ngữ máy?

- Hỏi: Vì khơng lập trình ngơn ngữ máy để khỏi phải công chuyển đổi mà người ta thường lập trình ngơn ngữ bậc cao?

-Lập trình việc sử dụng cấu trúc liệu lệnh ngơn ngữ lập trình cụ thể để mơ tả liệu diễn đạt thao tác thuật tốn

- Ta chương trình

2 Tham khảo sách giáo khoa sử dụng vốn hiểu biết tin học để điền phiếu học tập

- Ngôn ngữ máy - Hợp ngữ

- Ngôn ngữ bậc cao

- Ngôn ngữ máy : lệnh mã hóa ký hiệu 0-1 Chương trình viết ngơn ngữ máy nạp vào nhớ thực - Ngôn ngữ bậc cao : Các lệnh mã hóa ngơn ngữ gần với ngơn ngữ tiếng Anh Chương trình viết ngơn ngữ bậc cao phải chuyển đổi thành chương trình ngơn ngữ máy thực

- Phải sử dụng chương trình dịch để chuyển đổi

- Lập trình ngơn ngữ bậc cao dẽ viết lệnh mã hóa gần với ngơn ngữ tự nhiên Lập trình ngơn ngữ máy khó, thường chun gia lập trình lập trình

(3)

Em muốn giới thiệu trường cho người khách du lịch quốc tế biết tiếng Anh, có hai cách để thực hiện: Cách 1: Cần người biết tiếng Anh, dịch câu nói em sang tiếng Anh cho người khách

Cách 2: Em soạn nội dung cần giới thiệu giấy người phiên dịch dịch toàn nội dung sang tiếng Anh đọc cho người khách

- Hãy lấy ví dụ tương tự thực tế biên dịch thông dịch từ tiếng Anh sang tiếng Việt

2 Yêu cầu học sinh nghiên cứu sách giáo khoa sử dụng ví dụ biết bước tiến trình thơng dịch biên dịch

và thảo luận để tìm ví dụ tương tự

- Khi thủ tướng phủ trả lời vấn trước nhà báo quốc tế, họ thường cần người thông dịch để dịch câu tiếng Việt sang tiếng Anh - Khi thủ tướng đọc diễn văn tiếng Anh trước Hội nghị, họ cần người biên dịch để chuyển văn tiếng Việt thành tiếng Anh

2 Nghiên cứu sách giáo khoa suy nghĩ để trả lời

- Biên dịch:

Bước : Duyệt, phát lỗi, kiểm tra tính đắn lệnh chương trình nguồn

Bước : Dịch tồn chương trình nguồn thành chương trình ngơn ngữ máy

(thuận tiện cho chương trình ổn định cần thực nhiều lần)

- Thông dịch:

Bước : Kiểm tra tính đắn lệnh chương trình nguồn Bước : Chuyển lệnh thành ngơn ngữ máy

Bước : Thực câu lệnh vừa chuyển đổi

(4)

người máy) IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Khái niệm lập trình ngơn ngữ lập trình

- Có ba loại ngơn ngữ lập trình: Ngơn ngữ máy, hợp ngữ ngôn ngữ bậc cao - Khái niệm chương trình dịch

- Có hai loại chương trình dịch biên dịch thơng dịch

2 Câu hỏi tập nhà

- Mỗi loại ngơn ngữ lập trình phù hợp với người lập trình có trình độ nào?

- Kể tên số ngơn ngữ lập trình bậc cao có sử dụng kĩ thuật biên dịch số ngơn ngữ lập trình có sử dụng kĩ thuật thơng dịch

- Trả lời câu hỏi 1, 2, 3, sác giáo khoa, trang 13

- Xem đọc thêm 1: Em biết ngơn ngữ lập trình?, sách giáo khoa, trang

- Xem trước học: Các thành phần ngôn ngữ lập trình

CÁC THÀNH PHẦN CỦA NGƠN NGỮ LẬP TRÌNH I MỤC TIÊU

1 Kiến thức

- Nắm thành phần ngơn ngữ lập trình nói chung Một ngơn ngữ lập trình có ba thành phần: Bảng chữ cái, cú pháp ngữ nghĩa

- Biết số khái niệm như: tên, tên chuẩn, tên dành riêng, tên người lập trình đặt, hằng, biến thích

2 Kĩ năng

- Phân biệt tên chuẩn với tên dành riêng tên tự đặt - Nhớ quy định tên, biến

- Biết đặt tên nhận biết tên sai quy định - Sử dụng thích

II ĐỒ DÙNG DẠY HỌC

(5)

- Tranh chứa bảng chữ cái, tranh chứa tên đúng-sai để học sinh chọn, phiếu học tập, máy chiếu qua đầu, bìa trong, bút

2 Chuẩn bị học sinh

- Sách giáo khoa

III HOẠT ĐỘNG DẠY-HỌC

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Đặt vấn đề: Có yếu tố

dùng để xây dựng nên ngôn ngữ tiếng Việt?

2 Diễn giảng: Trong ngơn ngữ lập trình tương tự vậy, gồm có thành phần: Bảng chữ cái, cú pháp ngữ nghĩa

3 Chia lớp làm nhóm, phát bìa bút cho nhóm yêu cầu nhóm thực nhiệm vụ:

- Hãy nêu chữ bảng chữ tiếng Anh

- Nêu ký số hệ đếm thập phân - Nêu số ký hiệu đặc biệt khác

- Thu phiếu trả lời, chiếu kết lên bảng, gọi đại diện nhóm khác nhận xét, bổ sung

- Treo tranh giáo viên chuẩn bị để tiểu kết cho hoạt động

1 Độc lập suy nghĩ trả lời - Bảng chữ tiếng Việt, số, dấu

- Cách ghép ký tự thành từ, ghép từ thành câu

- Ngữ nghĩa từ câu Lắng nghe ghi nhớ

3 Nghiên cứu sách giáo khoa, thảo luận theo nhóm điền phiếu học tập:

Bảng chữ cái: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

a b c d e f g h i j k l m n o p q r s t u v w x y z

Hệ đếm: Ký hiệu đặc biệt:

+ - * / = < > [ ] , _ ; # ^ $ & ( ) { } : ‘

- Theo dõi kết nhóm khác bổ sung thiếu sót

- Tập trung xem tranh ghi nhớ

2 Hoạt động 2: Tìm hiểu khái niệm tên thành phần ngôn ngữ lập trình.

(6)

1 Đặt vấn đề: Mọi đối tượng chương trình phải đặt tên - Hãy nghiên cứu sách giáo khoa, trang 10, để nêu quy cách đặt tên Turbo Pasacl?

2 Treo tranh chứa tên đúng-sai, yêu cầu học sinh chọn tên

A A BC 6Pq R12 X#y _45

- Tiểu kết cho vấn đề việc khẳng định lại tên

3 Yêu cầu học sinh nghiên cứu sách giáo khoa, (trang 10-11) để biết khái niệm tên dành riêng, tên chuẩn tên người lập trình đặt

- Chia lớp làm nhóm, nhóm trình bày hiểu biết loại tên cho ví dụ

- Treo tranh chứa số tên ngôn

1 Nghiên cứu sách giáo khoa trả lời - Gồm chữ số, chữ cái, dấu gạch - Bắt đầu chữ dấu gạch

- Độ dài không 127 Quan sát tranh trả lời A

R12 _45

3 Nghiên cứu sách giáo khoa để trả lời

-Thảo luận theo nhóm điền phiếu học tập

+ Tên dành riêng: tên ngôn ngữ lập trình quy định dùng với ý nghĩa xác định, người lập trình khơng dùng với ý nghĩa khác

+ Tên chuẩn: tên ngôn ngữ lập trình quy định dùng với ý nghĩa đó, người lập trình định nghĩa lại để dùng với ý nghĩa khác + Tên người lập trình đặt: tên dùng theo ý nghĩa riêng người lập trình, tên khai báo trước sử dụng Các tên không trùng với tên dành riêng

(7)

ngữ lập trình Pascal chuẩn bị sẵn:

Program Abs Interger Type Xyx Byte Tong

- Phát bìa bút cho nhóm yêu cầu học sinh nhóm thực hiện: + Xác định tên dành riêng

+ Xác định tên chuẩn + Xác định tên tự đặt

- Thu phiếu học tập ba nhóm, chiếu kết lên bảng, gọi học sinh nhóm khác nhận xét bổ sung

- Tiểu kết cho vấn đề cách bổ sung thêm cho nhóm để đưa trả lời

Tên dành riêng: Program type Tên chuẩn: Abs Interger Byte Tên tự đặt: Xyx Tong

- Quan sát kết nhóm khác nhận xét, đánh giá bổ sung

- Theo dõi bổ sung giáo viên để hồn thiện kiến thức

3 Hoạt động 3: Tìm hiểu hằng, biến thích.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Yêu cầu học sinh cho số ví dụ

hằng số, xâu logic

- Trình bày khái niệm số, xâu logic

2 Ghi bảng: Xác định số xâu sau:

-32767 ‘QB’ ‘50’ 1.5E+2

3 Yêu cầu học sinh nghiên cứu sách giáo khoa, cho biết khái niệm biến

1 Độc lập suy nghĩ trả lời - Hằng số: 50 60.5 - Hằng xâu: ‘Ha Noi’ ‘A’ - Hằng logic: False

- Hằng số học số ngun số thực, có dấu khơng dấu

- Hằng xâu: chuỗi ký tự mã ASCII, đặt cặp dấu nháy - Hằng logic: giá trị (True) sai (False)

2 Quan sát bảng trả lời: - Hằng số: -32767, 1.5E+2 - Hằng xâu: ‘QB’ ‘50’

(8)

- Cho ví dụ số biến

4 Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết chức thích chương trình

- Cho ví dụ dịng thích - Hỏi: Tên biến tên tên dành riêng hay tên chuẩn hay tên người lập trình đặt?

- Hỏi: Các lệnh viết cặp dấu { } có TP thực khơng? sao?

thay đổi trình thực chương trình Các biến dùng chương trình phải khai báo - Ví dụ hai tên biến là: Tong, xyz

4 Độc lập tham khảo sách giáo khoa để trả lời

- Chú thích đặt cặp dấu { } (* *) dùng để giải thích cho chương trình rõ ràng dễ hiểu

- {Lenh xuat du lieu}

- Là tên người lập trình đặt

- Khơng Vì dịng thích IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Thành phần ngơn ngữ lập trình: bảng chữ, cú pháp nghữ nghĩa - Khái niệm: tên, tên chuẩn, tên dành riêng, tên người lập trình đặt, hằng, biến thích

CHƯƠNG CHƯƠNG TRÌNH ĐƠN GIẢN CẤU TRÚC CHƯƠNG TRÌNH

MỘT SỐ KIỂU DỮ LIỆU CHUẨN KHAI BÁO BIẾN

I MỤC TIÊU

1 Kiến thức

- Biết cấu trúc chung chương trình

- Biết số kiểu liệu chuẩn: nguyên, thực, ký tự, logic - Biết cấu trúc chung khai báo biến

(9)

- Sử dụng kiểu liệu khai báo biến để viết chương trình đơn giản

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính máy chiếu projector dùng để chiếu ví dụ - Tranh có chứa số khai báo biến để học sinh chọn đúng-sai - Một số chương trình mẫu viết sẵn

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 cấu trúc chung thành phần chương trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Phát vấn gợi ý: Một tập làm văn em

thường viết có phần? Các phần có thứ tự khơng? Vì phải chia vậy?

Yêu cầu học sinh nghiên cứu sách giáo khoa để trả lời câu hỏi sau:

- Một chương trình có cấu trúc phần? - Trong phần khai báo, có khai báo nào?

- Yêu cầu học sinh lấy ví dụ khai báo tên chương trình ngơn ngữ Pascal - Yêu cầu học sinh lấy ví dụ khai báo thư viện chương trình ngơn ngữ Pascal

- Yêu cầu học sinh lấy ví dụ khai báo ngôn ngữ Pascal

- Yêu cầu học sinh lấy ví dụ khai báo biến ngơn ngữ Pascal

-Yêu cầu học sinh cho biết cấu trúc chung

1 Lắng nghe suy nghĩ trả lời: - Có ba phần

- Có thứ tự : Mở bài, thân bài, kết luận - Dễ viết, dễ đọc, dễ hiểu nội dung Nghiên cứu sách giáo khoa, thảo luận trả lời

+ Hai phần:

[<phần khai báo>] <phần thân chương trình>

- Khai báo tên chương trình, khai báo thư viện chương trình con, khai báo hằng, khai báo biến khai báo chương trình

- Cấu trúc: Program ten_chuong_trinh; - Ví dụ: Program tinh_tong;

- Cấu trúc: Uses tên_thư_viện; - Ví dụ: Uses crt ;

- Cấu trúc: Const tên_hằng = giá_trị; - Ví dụ: Const maxn=100;

(10)

của phần thân chương trình ngơn ngữ lập trình Pascal

3 Tìm hiểu chương trình đơn giản - Chiếu lên bảng chương trình đơn giản ngơn ngữ C++

# Include <stdio.h> void main()

{

Printf(“Xin chao cac ban”); }

- Hỏi: Phần khai báo chương trình? - Hỏi: Phần thân chương trình, lệnh printf có chức gì?

- Chiếu lên bảng chương trình đơn giản ngơn ngữ Pascal

Program VD1; Var x,y:byte; t:word; Begin

t:=x+y; writeln(t); readln; End

- Hỏi: Phần khai báo chương trình?

- Hỏi: Phần thân chương trình? Có lệnh thân chương trình?

4 Yêu cầu học sinh lấy ví dụ chương trình Pascal khơng có phần tên phần khai báo

Begin

Dãy lệnh; End

3 Quan sát tranh trả lời

- Phần khai báo có khai báo thư viện stdio.h

- Phần thân {}

- Lệnh Printf dùng để đưa thơng báo hình

- Khai báo tên chương trình: Program VD1;

- Khai báo biến : Var x,y:byte; t:word; Var x,y:byte; t:word;

- Còn lại phần thân

- Lệnh gán, lệnh đưa thơng báo hình

4 Thảo luận trả lời Begin

Writeln(‘Hello’); readln;

End

(11)

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Đặt vấn đề: Trong tốn học, để thực

được tính tốn ta cần phải có tập số Đó tập số nào?

- Diễn giải: Cũng tương tự vậy, ngơn ngữ lập trình Pascal, để lập trình giải tốn, cần có tập hợp, tập hợp có giới hạn định

- Các em hiểu nơm na: Kiểu liệu chuẩn tập hữu hạn giá trị, kiểu liệu cần dung lượng nhớ cần thiết để lưu trữ xác định phép tốn tác động lên liệu

2 Yêu cầu học sinh nghiên cứu sách giáo khoa, trả lời câu hỏi sau:

- Có kiểu liệu chuẩn ngôn ngữ Pascal?

- Trong ngơn ngữ Pascal, có kiểu ngun thường dùng, phạm vi biểu diễn loại?

- Trong ngơn ngữ Pascal, có kiểu số thực thường dùng, phạm vi biểu diễn loại?

- Trong ngơn ngữ Pascal, có kiểu ký tự?

- Trong ngơn ngữ Pascal, có kiểu logic, gồm giá trị nào?

3 Giáo viên giải thích số vấn đề cho học sinh:

+ Vì phạm vi biểu diễn loại kiểu nguyên khác nhau?

+ Miền giá trị loại kiểu thực, số chữ số có nghĩa?

4 Phát vấn: Muốn tính tốn giá trị: 7.5 ta phải sử dụng kiểu liệu gì?

1 Chú ý, lắng nghe suy nghĩ trả lời:

- Số tự nhiên, Số nguyên, số hữu tỷ, số thực

- Liên tưởng tập số toán học với kiểu liệu Pascal

2 Nghiên cứu sách giáo khoa trả lời

- Có kiểu: kiểu nguyên, kiểu thực, kiểu ký tự kiểu logic

- Có loại: Byte, word, integer longint

- Có loại: Real, extended

- Có loại: Char

- Có loại: Boolean, gồm phần tử: True False

3 Chú ý lắng nghe ghi nhớ

(12)

3 Hoạt động 3: Tìm hiểu cách khai báo biến.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Yêu cầu học sinh ngiên cứu sách giáo

khoa cho biết phải khai báo biến?

- Cấu trúc chung khai báo biến ngôn ngữ Pascal

- Cho ví dụ để khai báo biến nguyên biến kiểu ký tự

2 Treo tranh có chứa số khai báo yêu cầu học sinh chọn khai báo ngôn ngữ lập trình Pascal?

Var

x, y, z: word; n 1: real; X: longint; h: in tegr; i:byte;

3 Treo tranh có chứa số khai báo biến Pascal

- Hỏi: Có biến tất cả, nhớ phải cấp phát bao nhiêu?

Var x, y: word; z: longint; h: integer; i:byte;

1 Nghiên cứu sách giáo khoa trả lời - Mọi biến dùng chương trình phải khai báo tên biến kiểu liệu biến Tên biến dùng để xác lập quan hệ biến với địa nhớ nơi lưu giữ giá trị biến

- Var <danh sách biến>: <kiểu liệu>;

Var x: word; y: char;

2 Quan sát tranh chọn khai báo

Var

x, y, z: word; i: byte;

3 Quan sát tranh trả lời - Có biến

- Tổng nhớ cần cấp phát

x (2 byte); y (2 byte); z (4 byte); h(2 byte); i (1 byte); Tổng 11 byte

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Một chương trình gồm có hai phần: phần khai báo phần thân

(13)

2 Câu hỏi tập nhà

- Làm tập 1, 2, 3, 4, 5, sách giáo khoa, trang 35

- Xem trước nội dung bài: Phép toán, biểu thức, lệnh gán, sách giáo khoa, trang 24

- Xem nội dung phụ lục B, sách giáo khoa trang 129: Một số kiểu liệu chuẩn, số thủ tục hàm chuẩn

PHÉP TOÁN, BIỂU THỨC, LỆNH GÁN I MỤC TIÊU

1 Kiến thức

- Biết phép tốn thơng dụng ngơn ngữ lập trình - Biết diễn đạt biểu thức ngơn ngữ lập trình

- Biết chức lệnh gán

- Biết cấu trúc lệnh gán số hàm chuẩn thông dụng ngơn ngữ lập trình Pascal

2 Kĩ năng

- Sử dụng phép toán để xây dựng biểu thức - Sử dụng lệnh gán để viết chương trình

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Sách giáo khoa, tranh chứa biểu thức toán học

- Tranh chứa bảng hàm số học chuẩn, tranh chứa bảng chân trị - Máy vi tính máy chiếu Projector

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 số phép tốn.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Đặt vấn đề: Để mô tả thao tác

thuật tốn, ngơn ngữ lập trình sử dụng số khái niệm bản: phép toán,

(14)

biểu thức, gán giá trị

2 Phát vấn: Hãy kể phép toán em học toán học

- Diễn giải: Trong ngơn ngữ lập trình Pascal có phép tốn diễn đạt cách khác

- Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết nhóm phép tốn

- Hỏi: Phép Div, Mod sử dụng cho kiểu liệu nào?

- Hỏi: Kết phép toán quan hệ thuộc kiểu liệu nào?

2 Suy nghĩ trả lời:

- Phép: cộng, trừ, nhân, chia, lấy số dư, chia lấy nguyên, so sánh

- Các phép toán số học: + - * / div mod

- Các phép toán quan hệ: <, <=, >, >=, =, <>

- Các phép toán logic: And, Or, Not - Chỉ sử dụng cho kiểu nguyên - Thuộc kiểu Logic

2 Hoạt động 2: Tìm hiểu biểu thức.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nếu vấn đề: Trong toán học ta làm quen

với khái niệm biểu thức, cho biết yếu tố xây dựng nên biểu thức

- Nếu toán mà toán hạng biến số, số hàm số toán tử phép tốn số học biểu thức có tên gọi gì? Treo tranh có chứa biểu thức tốn học lên bảng, yêu cầu: Sử dụng phép toán số học, biểu diễn biểu thức toán học sau thành biểu thức ngơn ngữ lập trình

2a+5b+c xy 2z

x+y 12 z

+ x

2

2z

- Nghiên cứu sách giáo khoa từ việc xậy dựng biểu thức trên, nêu thứ tự thực phép toán

1 Suy nghĩ trả lời

- Gồm hai phần: toán hạng toán tử

- Biểu thức số học

2 Quan sát tranh trả lời 2*a+5*b+c

x*y/(2*z)

((x+y)/(1-(2/z)))+(x*x/(2*z))

(15)

3 Nêu vấn đề: Trong toán học ta làm quen với số hàm số học, kể tên số hàm đó?

- Trong số ngơn ngữ lập trình ta có số hàm diễn đạt cách khác

- Treo tranh chứa bảng số hàm chuẩn, yêu cầu học sinh điền thêm thông tin chức hàm, kiểu đối số kiểu hàm số

- Cho biểu thức: − b+b24 ac

2a , biểu diễn biểu thức sang biểu thức ngơn ngữ lập trình

3 Nêu vấn đề: Khi hai biểu thức số học liên kết với phép toán quan hệ ta biểu thức mới, biểu thức gọi biểu thức gì?

- Hãy lấy ví dụ biểu thức quan hệ? - Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết cấu trúc chung biểu thức quan hệ?

- Thứ tự thực biểu thức quan hệ? - Cho biết kết phép toán quan hệ thuộc kiểu liệu học?

4 Nêu vấn đề: Các biểu thức quan hệ liên kết với phép toán Logic gọi biểu thức Logic

- Hãy cho số ví dụ biểu thức logic - Trong tốn học ta có biểu thức 5<=x<=11, biểu biễn biểu thức ngơn ngữ lập trình

- Thứ tự thực biểu thức logic

- Kết biểu thức logic có kiểu liệu

nguyên, chia lấy dư trước; cộng trừ sau

3 Suy nghĩ trả lời

Hàm trị tuyệt đối, hàm bậc hai, hàm sin, hàm cos

- Quan sát tranh vẽ, nghiên cứu sách giáo khoa lên bảng điền tranh

- Suy nghĩ, lên bảng trả lời (-b+sqrt(b*b-4*a*c))/(2*a)

3 Suy nghĩa trả lời - Gọi biểu thức quan hệ

- Ví dụ: 2*x < y - Cấu trúc chung:

<BT1> <phép tốn qh> <BT2> + Tính giá trị biểu thức

+ Thực phép toán quan hệ + Kiểu logic

4 Chú ý theo dõi dẫn dắt giáo viên suy nghĩ để trả lời

- Ví dụ: (A>B) or ((X+1)<Y) (5>2) and ((3+2) <7)

(16)

gì?

- Treo tranh có chứa bảng chân trị A B, yêu cầu học sinh điền giá trị cho A and B; A or B; not A

+ Thực biểu thức quan hệ + Thực phép toán logic + Kiểu logic

- Học sinh suy nghĩ trả lời cách điền vào bảng

3 Hoạt động 3: Tìm hiểu lệnh gán.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH - Giới thiệu ví dụ lệnh gán

Pascal sau: x := 4+8;

- Giải thích: Lấy cộng 8, đem kết đặt vào x Ta X=12

- Hỏi: Hãy cho biết chức lệnh gán?

- Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết cấu trúc chung lệnh gán ngôn ngữ Pascal

- Hãy cho ví dụ để tính nghiệm phương trình bậc hai

− b+b24 ac 2a

- Giới thiệu thêm ví dụ: Cho chương trình Var i,z:integer;

Begin z:=4; i:=6: z := z - 1; i := i+1; writeln(‘i=’,i); writeln(‘z=’,z); readln;

End

- Hỏi: Chương trình in hình giá trị bao nhiêu?

- Quan sát ví dụ suy nghĩ để trả lời

+ Tính giá trị biểu thức

+ Gán giá trị tính vào tên biến

<tên_biến>:=<biểu_thức>;

x:=(-b+sqrt(b*b-4*a*c))/(2*a);

(17)

- Thực chương trình để học sinh kiểm

nghiệm kết tự suy luận - Quan sát kết chương trình IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Các phép toán Turbo Pascal: số học, quan hệ logic - Các biểu thức Turbo Pascal: số học, quan hệ logic - Cấu trúc lệnh gán Turbo Pascal: tên_biến := biểu_thức;

2 Câu hỏi tập nhà

- Làm tập 5, 6, 7, 8, sách giáo khoa, trang 35-36

- Xem phụ lục A, sách giáo khoa trang 121: Một số phép toán thường dùng giá trị phép toán logic

CÁC THỦ TỤC CHUẨN VÀO/RA ĐƠN GIẢN I MỤC TIÊU

1 Kiến thức

- Biết ý nghĩa thủ tục vào/ra chuẩn lập trình

- Biết cấu trúc chung thủ tục vào/ra ngơn ngữ lập trình Pascal

2 Kĩ năng

- Viết lệnh vào/ra liệu

- Biết nhập liệu thực chương trình II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Sách giáo khoa, tranh chứa biểu thức toán học, máy chiếu projector, máy vi tính, số chương trình viết sẵn

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 thủ tục nhập liệu vào từ bàn phím.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nêu vấn đề: Khi giải toán,

ta phải đưa liệu vào để máy tính xử lý, việc đưa liệu lệnh gán làm cho chương trình có tác dụng với liệu

(18)

cố định Để chương trình giải nhiều tốn hơn, ta phải sử dụng thủ tục nhập liệu

- Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết cấu trúc chung thủ tục nhập liệu ngơn ngữ lập trình Pascal: - Nêu ví dụ: Khi viết chương trình giải phương trình ax+b=0, ta phải nhập vào đại lượng nào? viết lệnh nhập?

2 Chiếu chương trình Pascal đơn giản có lệnh nhập giá trị cho hai biến

- Thực chương trình thực nhập liệu

- Hỏi: Khi nhập giá trị cho nhiều biến, ta phải thực nào?

- Yêu cầu học sinh thực nhập liệu cho chương trình

- Nghiên cứu sách giáo khoa suy nghĩ để trả lời

Read(<tên_biến_1>, ,<tên_biến_k>); Readln(<tên_biến_1>, ,<tên_biến_k>); - Phải nhập giá trị cho hai biến: a, b - Viết lệnh: Readln(a,b);

2 Quan sát chương trình ví dụ giáo viên

- Những giá trị phải gõ cách dấu cách ký tự xuống dòng

- Lên bảng thực nhập theo yêu cầu giáo viên

2 Hoạt động 2:Tìm hiểu thủ tục đưa liệu hình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Dẫn dắt: Sau xử lý xong, kết tìm

được lưu nhớ Để thấy kết hình ta sử dụng thủ tục xuất liệu

- Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết cấu trúc chung thủ tục xuất liệu ngơn ngữ lập trình Pascal: - Nêu ví dụ: Khi viết chương trình giải phương trình ax+b=0, ta phải đưa hình giá trị nghiệm –b/a ta phải viết lệnh nào?

2 Chiếu chương trình Pascal đơn giản Program vd;

1 Chú ý lắng nghe dẫn dắt giáo viên

- Nghiên cứu sách giáo khoa trả lời

Write(<tên_biến_1>, ,<tên_biến_k>); Writeln(<tên_biến_1>, ,<tên_biến_k>); - Viết lệnh: Writeln(-b/a);

(19)

Var x,y,z:ineteger; Begin

Writeln(‘Nhap vao hai so: ’); Readln(x,y);

z:=x+y;

write(x:6, y:6, z:6); readln;

end

- Thực chương trình thực nhập liệu để học sinh thấy kết hình

- Hỏi: Chức lệnh Writeln(); - Hỏi: Ý nghĩa :6 lệnh Write( )

- Hỏi: Khi tham số lệnh Write() thuộc kiểu Char real quy định vị trí nào?

- Cho ví dụ cụ thể với biến c kiểu Char r kiểu real

- Viết hình dịng chữ đưa trỏ xuống dịng

- Dành vị trí hình để viết số x, vị trí tiếp để viết số y vị trí tiếp để viết số z

- Khi tham số có kiểu ký tự, việc quy định vị trí giống kiểu ngun - Khi tham số có kiểu thực phải quy định hai loại vị trí: vị trí cho tồn số thực vị trí cho phần phập phân

- Ví dụ: Write(c:8); Write(r:8:3); IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Nhập liệu: Read/Readln(<tên_biến_1>, ,<tên_biến_k>); - Xuất liệu: write/writeln(<tham_số_1>, ,<tham_số_k>);

SOẠN THẢO, DỊCH, THỰC HIỆN VÀ HIỆU CHỈNH CHƯƠNG TRÌNH I MỤC TIÊU

1 Kiến thức

(20)

2 Kĩ năng

- Biết khởi động thoát hệ soạn thảo Turbo Pascal - Soạn chương trình vào máy

- Dich chương trình để phát lỗi cú pháp

- Thực chương trình để nhập liệu thu kết quả, tìm lỗi thuật tốn sửa lỗi

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính có cài phần mềm Turbo Pascal 7.0, máy chiếu Projector, máy chiếu vật thể

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: Làm quen với Turbo Pascal 7.0

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Đặt vấn đề: Để sử dụng Turbo

Pascal, máy phải có file chương trình cần thiết Tham khảo sách giáo khoa cho biết tên file chương trình đó? Trình diễn cách khởi động Turbo Pascal thông qua máy chiếu Projector

- Giới thiệu hình soạn thảo chương trình: Bảng chọn, trỏ, vùng soạn thảo

1 Tham khảo sách giáo khoa trả lời Turbo.exe

Turbo.tpl Graph.tpu

egavga.bgi file *.chr Học sinh quan sát ghi nhớ

2 Hoạt động 2: Tập soạn thảo chương trình dịch lỗi cú pháp.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Soạn chương trình làm ví dụ, lưu

chương trình, dịch lỗi

- Dùng máy chiếu vật thể để minh họa thao tác lưu file chương trình biên dịch Soạn chương trình, hỏi lỗi cú pháp chương trình, gọi học sinh dịch lỗi sửa

1 Quan sát ghi nhớ - Lưu: F2

- Dịch lỗi: ALT_F9

2 Quan sát phát lỗi để sửa lỗi cho chương trình

(21)

Program vd1 var x:integer; Bigen

Write(‘Nhap mot so nguyen duong); readln(x);

y:=sqrt(x); write(y); End

var x,y:integer; Begin

Write(‘Nhap mot so nguyen duong’); readln(x);

y:=sqrt(x); write(y); End

3 Hoạt động 3: Tập thực chương trình tìm lỗi thuật tốn để hiệu chỉnh.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Thực chương trình viết

trên, nhập liệu, giới thiệu kết - Dùng máy chiếu vật thể để minh họa thao tác thực chương trình

- Hỏi: Nhóm phím dùng để thực chương trình?

- Yêu cầu học sinh nhập liệu thực chương trình

2 Giới thiệu chương trình giải phương trình ax+b=0

Var Begin Readln(a,b);

If a<>0 then write(-b/a) else write(‘PTVN); Readln;

End

- Yêu cầu học sinh tìm test để chứng minh chương trình sai

1 Quan sát giáo viên thực tham khảo sách giáo khoa

CTRL_F9

2 Quan sát yêu cầu giáo viên độc lập suy nghĩ để tìm test

a b x VSN

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Khởi động Turbo Soạn chương trình Dịch lỗi cú pháp Thực chương trình Tìm lỗi thuật toán hiệu chỉnh

(22)

I MỤC TIÊU

1 Kiến thức

- Biết chương trình Pascal hồn chỉnh

- Làm quen với dịch vụ chủ yếu Turbo Pascal việc soạn thảo, lưu chương trình, dịch chương trình thực chương trình

2 Kĩ năng

- Soạn chương trình, lưu lên đĩa, dịch lỗi cú pháp, thực tìm lỗi thuật tốn hiệu chỉnh

- Bước đầu biết phân tích hồn thành chương trình đơn giản Turbo Pascal

3 Thái độ

- Tự giác, tích cực chủ động thực hành II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Phịng máy vi tính cài đầy đủ Turbo Pascal, máy chiếu Projector để hướng dẫn

2 Chuẩn bị học sinh

- Sách giáo khoa, sách tập tập viết nhà III HOẠT ĐỘNG DẠY-HỌC

1 Hoạt động 1: Tìm hiểu chương trình hồn chỉnh

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Chiếu chương trình lên bảng Yêu cầu học

sinh thực nhiệm vụ: - Soạn chương trình vào máy - Lưu chương trình

- Dịch lỗi cú pháp

- Thực chương trình

- Nhập liệu -3 Thông báo kết - Trở hình soạn thảo

- Thực chương trình

- Nhập liệu Thông báo kết - Hỏi: Vì có lỗi xuất hiện?

- Sửa lại chương trình khơng dùng biến d

1 Quan sát bảng, độc lập soạn chương trình vào máy

F2 Alt_F9 Ctrl_F9

x1=1.00 x2=2.00 Enter

Ctrl_F9 Thông báo lỗi

Do bậc hai số âm Readln(a,b,c);

(23)

x2:=(-b+sqrt(b*b-4*a*c))/(2*a); writeln(‘x1=’,x1:6:2,‘ x2=’,x2:6:2,);

2 Hoạt động 2: Rèn luyện kĩ lập chương trình. a Mục tiêu:

- Học sinh soạn chương trình lưu chương trình vào đĩa Biên dịch thực chương trình Nhập liệu kiểm định kết chương trình

b Nội dung:

- Viết chương trình tính diện tích hình tơ màu, với a nhập vào từ bàn phím

c Các bước tiến hành:

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Định hướng để học sinh phân tích

bài tốn - Dữ liệu vào: - Dữ liệu ra: - Cách tính:

2 Yêu cầu học sinh soạn chương trình lưu lên đĩa

- Quan sát hướng dẫn học sinh lúc thực hành

3 Yêu cầu học sinh nhập liệu

1 Phân tích theo yêu cầu giáo viên Dữ liệu vào a

Dữ liệu s

Tính diện tích hình trịn có bk a (s1) Tính diện tích hình vng cạnh a √2 (s2)

s:=s1-s2;

2 Thực yêu cầu giáo viên - Soạn chương trình

- Bấm phím F2, gõ tên file để lưu

- Bấm phím ALT_F9 để dịch lỗi cú pháp - Bấm phím CTRL_F9 để thực chương trình

- Thơng báo kết cho giáo viên Nhập liệu theo yêu cầu

a

a a

(24)

thông báo kết a=3

a=-3

- Với a=3, ta được: s=9(Pi-2) = 10.26 - Với a=-3, kết khơng đúng, độ dài cạnh phải số dương

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Các bước để hồn thành chương trình:

+ Phân tích tốn để xác định liệu vào, liệu + Xác định thuật toán

+ Soạn chương trình vào máy + Lưu trữ chương trình + Biên dịch chương trình

+ Thực hiệu chỉnh chương trình

CHƯƠNG TỔ CHỨC RẼ NHÁNH VÀ LẶP CẤU TRÚC RẼ NHÁNH

I MỤC TIÊU

1 Kiến thức

- Học sinh biết ý nghĩa cấu trúc rẽ nhánh - Học sinh biết cấu trúc chung cấu trúc rẽ nhánh

- Biết cách sử dụng hai dạng cấu trúc rẽ nhánh lập trình: dạng thiếu dạng đủ

2 Kĩ năng

- Bước đầu sử dụng cấu trúc rẽ nhánh If then else ngơn ngữ lập trình Pascal để viết chương trình giải số tốn đơn giản

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính, máy chiếu Overhead, máy chiếu projector, bì trong, bút dạ, chương trình mẫu giải phương trình bậc hai ax2 + bx + c =

2 Chuẩn bị học sinh

- Sách giáo khoa III HOẠT ĐỘNG DẠY-HỌC

(25)

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nêu ví dụ thực tiễn minh hoạ cho tổ

chức rẽ nhánh:

Chiều mai trời không mưa An xem đá bóng, trời mưa An xem tivi nhà

- Yêu cầu học sinh tìm thêm số ví dụ tương tự

- Yêu cầu học sinh đưa cấu trúc chung cách diễn đạt

- u cầu học sinh lấy ví dụ có cấu trúc chung dạng khuyết đưa cấu trúc chung

2 Nêu bước để kết luận nghiệm phương trình bậc hai ax2 + bx + c = 0

- Chia nhóm lớp thành nhóm yêu cầu vẽ sơ đồ thực bước bìa

- Chọn để chiếu lên bảng, gọi học sinh thuộc nhóm khác nhận xét đánh giá kết bổ sung

3 Tiểu kết cho hoạt động cách bổ sung xác tập học sinh

1 Chú ý theo dõi dẫn dắt ví dụ giáo viên để suy nghĩ tìm ví dụ tương tự

- Nếu đội tuyển bóng đá Việt Nam thắng đội Indonesia tiếp đá tranh huy chương vàng với Thái Lan, không thắng Indonesia Việt Nam tranh huy chương đồng với Mianmar - Nếu khơng

- Nếu làm xong tập sớm An sang nhà Ngọc chơi

Nếu

2 Theo dõi thực yêu cầu giáo viên

+ Tính delta

+ Nếu delta<0 kết luận phương trình vơ nghiệm

+ Nếu delta>=0 kết luận phương trình có nghiệm:

x = (-b+sqrt(delta))/(2a) x = (-b-sqrt(delta))/(2a)

- Thực vẽ sơ đồ (giống phần nội dung)

- Nhận xét, đánh giá bổ sung thiếu sót nhóm khác

3 Quan sát hình vẽ nhóm khác giáo viên để ghi nhớ

2 Hoạt động 2: Tìm hiểu cấu trúc lệnh rẽ nhánh IF-THEN-ELSE ngôn ngữ lập trình pascal.

(26)

1 Yêu cầu học sinh nghiên cứu sách giáo khoa dựa vào ví dụ tổ chức rẽ nhánh để đưa cấu trúc chung lệnh rẽ nhánh

2 Nêu vấn đề trường hợp khuyết: Khi không đề cập đến việc xảy điều kiện khơng thoả mãn, ta có cấu trúc nào?

3 Yêu cầu học sinh vẽ sơ đồ thực lệnh rẽ nhánh dạng khuyết dạng đủ lên bảng

4 Gợi ý cần thiết lệnh ghép Đưa cấu trúc lệnh ghép

- Khi giải thích lệnh, lệnh1, lệnh 2, giáo viên nói: Sau then else em thấy phép đặt lệnh Trong thực tế, thường lại nhiều lệnh

- Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết cấu trúc để ghép lệnh thành lệnh

1 Nghiên cứu sách giáo khoa trả lời If <điều kiện> then <lệnh 1> else <lệnh 2>;

2 Học sinh ý lắng nghe trả lời: - Khi ta có lệnh khuyết

If <điều kiện> then <lệnh>;

3 Vẽ sơ đồ thực trình bày phần nội dung

4 Theo dõi dẫn dắt giáo viên để trả lời

- Ta phải nhóm nhiều lệnh thành môt lệnh

- Cấu trúc lệnh ghép: Begin

<Các lệnh cần ghép>; End;

3 Hoạt động 3: Rèn luyện kĩ vận dụng lệnh If.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nêu nội dung, mục đích yêu cầu ví

dụ

Viết chương trình nhập vào độ dài hai cạnh hình chữ nhật tính chu vi, diện tích hình chữ nhật

- Chương trình em viết, cho biết có hạn chế chương trình em?

- Hướng giải em nào?

- Yêu cầu học sinh nhà tiếp tục hồn thiện chương trình

1 Chú ý dẫn dắt giáo viên

-Khi nhập độ dài âm dẫn đến chương trình trả lời chu vi, diện tích âm Điều khơng có thực tế -Dùng lệnh rẽ nhánh để kiểm tra giá trị độ dài cạnh nhập vào

(27)

2 Nêu nội dung tập, mục đích u cầu tập

Tìm nghiệm phương trình bậc hai - Hãy nêu bước để trả lời nghiệm phương trình bậc hai

- Trong toán ta cần lệnh rẽ nhánh Dạng nào?

- Tổ chức lớp thành nhóm, u cầu học sinh viết chương trình hồn thiện lên bìa

- Thu phiếu trả lời, chiếu lên bảng, gọi học sinh nhóm khác nhận xét đánh giá

- Chuẩn hố lại chương trình cho lớp chương trình mẫu giáo viên

2 Ghi đề bài, ý mục đích yêu cầu tập

+ Tính delta

+ Nếu delta<0 kết luận phương trình vơ nghiệm

+ Nếu delta>=0 kết luận phương trình có nghiệm:

x = (-b+sqrt(delta))/(2a) x = (-b-sqrt(delta))/(2a)

- Có thể sử dụng hai lệnh rẽ nhánh dạng khuyết, sử dụng lệnh dạng đủ

- Thảo luận viết chương trình lên bìa

- Thông báo kết viết

- Nhận xét, đánh giá bổ sung thiếu sót nhóm khác

- Ghi chép nội dung chương trình mà giáo viên kết luận

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Cấu trúc chung cấu trúc rẽ nhánh

- Sự thực máy gặp cấu trúc rẽ nhánh IF - Sơ đồ thực cấu trúc rẽ nhánh IF

2 Câu hỏi tập nhà

- Trả lời câu hỏi 1, 2, 4, sách giáo khoa, trang 50

- Viết chương trình nhập vào hai số in hình giá trị lớn hai số

CẤU TRÚC LẶP (TIẾT 1/2) I MỤC TIÊU

1 Kiến thức

- Biết ý nghĩa cấu trúc lặp

(28)

2 Kĩ năng

- Bước đầu sử dụng lệnh lặp For để lập trình giải số toán đơn giản

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính, máy chiếu overhead, bìa trong, bút dạ, máy chiếu projector, sách giáo khoa, sách giáo viên

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 ý nghĩa cấu trúc lặp.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nêu toán đặt vấn đề toán

- Hãy xác định cơng thức tốn học để tính tổng?

- Gợi ý phương pháp: Ta xem S thùng, số hạng ca có dung tích khác nhau, việc tính tổng tương tự việc đổ ca nước vào thùng S

- Có lần đổ nước vào thùng? - Mỗi lần đổ lượng bao nhiêu? lần thứ i đổ bao nhiêu?

- Phải viết lệnh?

2 Nêu toán đặt vấn đề toán - Em hiểu cách tính tiền gửi tiết kiệm toán

- Từ đó, lập cơng thức tính tiền thu sau tháng thứ

- Ta phải thực tính lần vậy?

1 Chú ý quan sát tốn đặt vấn đề - Rất khó xác định công thức - Theo dõi gợi ý

- Phải thực 100 lần đổ nước - Mỗi lần đổ a1

+i

- Phải viết 100 lệnh

2 Chú ý quan sát trả lời câu hỏi - Với số tiền S, sau tháng có tiền lãi 0,015*S

- Số tiền cộng vào số tiền ban đầu để tính lãi cho tháng

- S := S + 0,015*S;

(29)

- Dẫn dắt: Chương trình viết dài, khó đọc dễ sai sót Cần có cấu trúc điều khiển việc lặp lại thực công việc

- Trong tất ngôn ngữ lập trình có cấu trúc điều khiển việc thực lặp lại với số lần định trước

3 Chia lớp làm nhóm nhóm viết thuật tốn giải tốn nhóm viết thuật tốn giải tốn lên bìa

- Thu kết quả, chiếu kết lên bảng Gọi học sinh nhóm khác nhận xét đánh giá - Chuẩn hóa lại thuật tốn cho học sinh lần cuối

3 Thảo luận theo nhóm để viết thuật tốn:

Bước 1: N  0; S  1/a; Bước 2: N  N+1;

Bước 3: Nếu N>100 chuyển đến bước

Bước 4: S  S+ 1/(a+N), quay lại bước

Bước 5: Đưa S hình kết thúc - Thơng báo kết viết

- Nhận xét, đánh giá kết nhóm khác

- Theo dõi ghi nhớ

2 Hoạt động 2: Tìm hiểu lệnh lặp For ngơn ngữ lập trình Pascal.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Yêu cầu học sinh nghiên cứu sách giáo

khoa cho biết cấu trúc chung For? - Giải thích:

<biến đếm>: biến kiểu nguyên, ký tự - Hỏi: Ý nghĩa <Giá trị đầu> <Giá trị cuối>, kiểu liệu chúng

- Hỏi: Trong toán gửi tiết kiệm, <Giá trị đầu> <Giá trị cuối> bao nhiêu? - Hỏi: Trong tốn tính tổng <Giá trị đầu> <Giá trị cuối> bao nhiêu?

- Dẫn dắt: Những lệnh cần lặp lại ta đặt sau Do

1 Đọc sách giáo khoa trả lời

For <biến đếm>:=<Giá trị đầu> To <Giá trị cuối> Do <lệnh cần lặp>; - Dùng để làm giới hạn cho biến đếm - Cùng kiểu với <biến đếm>

(30)

- Hỏi: Khi nhiều lệnh khác cần lặp lại ta viết nào?

- Hỏi: Trong toán gửi tiết kiệm, lệnh cần lặp lại?

- Hỏi: Trong tốn tính tổng, lệnh cần lặp lại?

Hỏi: Em có nhận xét giá trị <Giá trị đầu> <Giá trị cuối> ?

- Dẫn dắt: Khi lệnh For gọi For tiến Ngơn ngữ lập trình Pascal cịn có dạng For khác gọi For lùi

2 Yêu cầu: Hãy trình bày cấu trúc chung For lùi

- Hỏi: So sánh <Giá trị đầu> <Giá trị cuối>?

- Hỏi: Trong hai toán trên, dạng lệnh For phù hợp?

- Phải sử dụng cấu trúc lệnh ghép S := S +0.015*S;

S := S + a1

+i ;

<Giá trị đầu> < <Giá trị cuối>

2 Nghiên cứu sách giáo khoa, suy nghĩ, so sánh với cấu trúc For tiến để trả lời

For <biến đếm>:=<Giá trị cuối> Downto <Giá trị đầu> Do <lệnh cần lặp>;

<Giá trị đầu> > <Giá trị cuối> - Sử dụng dạng For tiến phù hợp

3 Hoạt động 3: Rèn luyện kĩ vận dụng lệnh lặp For.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nêu nội dung toán Mục tiêu xác

định việc cần làm + Xác định giá trị đầu, giá trị cuối + Xác định lệnh cần lặp lại

- Yêu cầu học sinh tiếp tục hồn thành chương trình nhà

2 Nêu nội dung toán 2, mục tiêu viết chương trình hồn thiện

- Định hướng vấn đề

- Chia lớp làm nhóm u cầu học sinh viết chương trình lên giấy bìa

- Thu phiếu học tập, chiếu lên bảng, gọi

1 Chú ý lắng nghe trả lời yêu cầu giáo viên

- Giá trị đầu 1, giá trị cuối 100 S := S +

a+i ;

2 Chú ý lắng nghe nội dung yêu cầu

(31)

học sinh nhóm khác nhận xét đánh giá - Chính xác hố làm học sinh chương tình mẫu

- Quan sát chương trình giáo viên hướng dẫn ghi nhớ

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Cấu trúc chung lệnh lặp For Sơ đồ thực lệnh lặp For

2 Câu hỏi tập nhà

- Giải tập 5.a, 6, sách giáo khoa, trang 51

- Xem trước phần nội dung cấu trúc lặp có số lần chưa xác định While - Xem nội dung phụ lục B, sách giáo khoa trang 131: Lệnh rẽ nhánh lặp - Xem nội dung phụ lục C, sách giáo khoa trang 139: Lệnh rẽ nhánh lặp

CẤU TRÚC LẶP (TIẾT 2/2) I MỤC TIÊU

1 Kiến thức

- Biết ý nghĩa cấu trúc lặp có số lần lặp chưa xác định - Biết cấu trúc chung lệnh lặp While ngôn ngữ Pascal - Biết thực máy gặp lệnh lặp While

2 Kĩ năng

- Phân biệt giống khác cấu trúc lặp For While - Sử dụng lệnh lặp While lập trình

- Bước đầu biết lựa chọn dạng lệnh lặp để lập trình giải số toán đơn giản

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính, máy chiếu overhead, projector, sách giáo khoa, sách giáo viên

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 ý nghĩa cấu trúc lặp có số lần chưa xác định. HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Chiếu nội dung toán 1 Chú ý lắng nghe, quan sát suy

(32)

- Hỏi: Sự khác toán với toán viết tiết trước?

- Hỏi: Lặp lần? - Hỏi: Lặp đến nào?

2 Chiếu nội dung toán

- Hỏi: khác toán với toán giải tiết trước?

- Hỏi: Số lần lặp lệnh? - Hỏi: Lặp đến nào?

3 Tiểu kết vấn đề: Qua hai ví dụ ta thấy có dạng tốn có lặp lại số lệnh trước số lần lặp Cần có cấu trúc điều khiển lặp lại công việc định thỏa mãn điều kiện

- Bài trước: cho giới hạn N - Bài này: cho giới hạn S - Chưa xác định - Đến điều kiện a1

+M <0,0001

được thỏa mãn

2 Chú ý lắng nghe, quan sát suy nghĩ trả lời

- Bài trước: Biết số tháng, hỏi số tiền - Bài này: Biết số tiền, hỏi số tháng - Chưa biết trước, số tháng cần tìm

- Đến số tiền thu > S1 đồng Theo dõi ghi nhớ kết luận giáo viên

2 Hoạt động 2: Tìm hiểu cấu trúc lệnh lặp While ngơn ngữ lập trình Pascal.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Yêu cầu học sinh nghiên cứu sách giáo

khoa cho biết cấu trúc chung lệnh lặp While

- Giải thích:

+ <Điều kiện>: biểu thức quan hệ biểu thức logic, điều kiện để lặp lại - Hỏi: Trong tốn 1: điều kiện để lặp lại gì?

- Hỏi: Trong toán 2: điều kiện để lặp lại gì?

+ <Lệnh cần lặp>: lệnh cần phải lặp lại

- Hỏi: Trong hai toán lệnh cần lặp

1 Tham khảo sách giáo khoa trả lời

- Cấu trúc chung:

While <điều kiện> Do <lệnh cần lặp>;

a+M >0,0001

S < S1

(33)

gì?

- Hỏi: Một khác lệnh cần lặp For While gì?

- Dựa vào cấu trúc chung, cho biết máy thực tính <điều kiện> trước hay thực <lệnh cần lặp> trước?

2 Yêu cầu học sinh vẽ sơ đồ cấu trúc lên bảng

- Gọi học sinh đánh giá nhận xét

- Tiểu kết cho vấn đề cách treo sơ đồ mẫu giải thích

t := t+1; để tính số tháng S := S + 1/(a+i) để tính tổng i := i+1; để tăng số

- While phải có lệnh tăng biến số - Quan sát, suy nghĩ trả lời:

+ Tính biểu thức điều kiện trước + Thực lệnh cần lặp sau

2 Lên bảng vẽ sơ đồ cấu trúc lệnh While

-Nhận xét sai bổ sung

3 Hoạt động 3: Rèn luyện kĩ vận dụng lệnh lặp While.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nêu nội dung tốn Mục tiêu viết

chương trình hồn thiện - Định hướng vấn đề + Xác định điều kiện để tiếp tục lặp + Xác định lệnh cần lặp

- Chia lớp làm nhóm u cầu học sinh viết chương trình hồn thiện lên bìa - Thu phiếu trả lời, chiếu kết máy Overhead

- Gọi học sinh nhóm khác nhận xét đánh giá

- Chính xác hố chương trình cho lớp Nêu nội dung tốn Mục tiêu phân tích để xác định <điều kiện> <lệnh cần lặp>

- Lấy ví dụ cụ thể tìm ước số chung hai số 15 25

m n

1 Chú ý lắng nghe suy nghĩ trả lời câu hỏi định hướng giáo viên - Điều kiện: S < S1

S := S + 0,015*S để tính số tiền t := t+1; để tính số tháng

- Tập trung làm việc theo nhóm để viết chương trình hồn thiện

-Đánh giá đúng-sai bổ sung

-Ghi nhớ phần giáo viên sửa chữa

(34)

15 25 15 10 10

Trả lời: ước số chung lớn - Hỏi: Điều kiện để tiếp tục lặp gì? - Hỏi: Các lệnh cần lặp lại gì?

- Yêu cầu học sinh: Nêu thuật toán để tìm ước số chung hai số đó?

- u cầu học sinh viết chương trình hồn thiện toán nhà

- Yêu cầu học sinh hai câu hỏi cần đặt gặp toán dạng

- Điều kiện: m<>n

- Lệnh cần lặp: m:=m-n; n:=n-m; - Thuật toán:

B1: Nếu m=n UC=m, dừng

B2: Nếu m>n m:=m-n ngược lại n:=n-m; Quay lại B1

- Suy nghĩ trả lời: + Điều kiện để lặp lại? + Những lệnh cần lặp lại? IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Ý nghĩa cấu trúc lặp có số lần chưa xác định

- Cấu trúc chung lệnh lặp While ngôn ngữ Pascal - Sơ đồ thực lệnh lặp While

- Sự thực máy gặp lệnh lặp While

2 Câu hỏi tập nhà

- Giải tập 4, 5b, 7,8, sách giáo khoa, trang 51 - Viết chương trình tính tổng:

S= a +

1

a+1 +

a+2 + +

a+N + a+N

<0,0001

BÀI THỰC HÀNH SỐ 2 I MỤC TIÊU

1 Kiến thức

- Nắm cấu trúc sơ đồ thực cấu trúc rẽ nhánh

(35)

- Rèn luyện kĩ sử dụng cấu trúc rẽ nhánh việc lập trình giải số tốn cụ thể

- Làm quen với công cụ phục vụ hiệu chỉnh chương trình

3 Thái độ

- Tự giác, tích cực chủ động thực hành II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Phịng máy vi tính, máy chiếu projector để hướng dẫn

2 Chuẩn bị học sinh

- Sách giáo khoa, sách tập tập viết nhà III HOẠT ĐỘNG DẠY-HỌC

1 Hoạt động 1: Làm quen với chương trình cơng cụ hiệu chỉnh chương trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Gợi ý để học sinh nêu khái niệm số

Pitago

- Yêu cầu: Lấy ví dụ cụ thể

- Hỏi: Để kiểm tra ba số a,b,c có phải Pitago, ta phải kiểm tra đẳng thức nào?

2 Chiếu chương trình mẫu lên bảng Thực mẫu thao tác: lưu, thực lệnh chương trình, xem kết trung gian, thực chương trình nhập liệu - Yêu cầu học sinh gõ chương trình mẫu vào máy

- Yêu cầu học sinh lưu chương trình lên đĩa với tên Pytago.pas

- Yêu cầu học sinh thực lệnh chương trình

- Yêu cầu học sinh xem kết a2, b2, c2

- Yêu cầu học sinh tự tìm thêm số a

1 Theo dõi dẫn dắt học sinh để nêu khái niệm số pitago: tổng bình phương hai số bình phương số cịn lại

Ví dụ số Pitago: a2 = b2 + c2

b2 = a2 + c2 c2 = b2 + a2

2 Soạn chương trình vào máy theo yêu cầu giáo viên

- Bấm F2, gõ tên file enter

- Bấm F7 Nhập giá trị a=3, b=4, c=5

- Chọn menu Debug để mở cửa sổ hiệu chỉnh

(36)

b c khác so sánh liệu vào trả lời

2 Hoạt động 2: Rèn luyện kĩ lập trình hồn thiện toán.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nêu nội dung, mục đích, yêu cầu

toán

- Hỏi: Bước để giải toán? - Hỏi: Để xác định ta phải đặt câu hỏi nào? Gọi học sinh đặt câu hỏi gọi học sinh trả lời cho câu hỏi đó?

- Yêu cầu học sinh phác họa thuật toán Yêu cầu học sinh gõ chương trình vào máy

- Giáo viên tiếp cận học sinh để hướng dẫn sửa sai

3 Yêu cầu học sinh nhập liệu - Nhập liệu với test -2

4 Yêu cầu học sinh xác định testcasse, nhập liệu, đối sánh kết

1 Chú ý theo dõi vấn đề đặt giáo viên

- Xác định input, output thuật giải - Mục đích giải phương trình? + Kết luận số nghệm giá trị nghiệm x

-Để tính nghiệm x cần đại lượng nào?

+ Cần đại lượng: a b

- Có bước xử lý để tính x?

2 Độc lập soạn chương trình vào máy - Thơng báo kết viết

3 Nhập liệu theo test giáo viên thơng báo kết chương trình Tìm testcase

0 VSN VN -1.5

Nhập liệu thông báo kết IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

Các bước để hoàn thành chương trình:

- Phân tích tốn để xác định liệu vào, liệu ra, thuật toán - Soạn chương trình vào máy

- Lưu trữ chương trình - Biên dich

- Thực hiệu chỉnh chương trình

(37)

- Viết chương trình nhập vào độ dài ba cạnh tam giác tính chu vi, diện tích tam giác

LUYỆN TẬP I MỤC TIÊU

1 Kiến thức

- Củng cố lại cho học sinh kiến thức liên quan đến tổ chức rẽ nhánh lặp: cấu trúc lặp, sơ đồ thực hiện, thực máy gặp lệnh lặp

2 Kĩ năng

- Rèn luyện kĩ vận dụng linh hoạt việc lựa chọn cấu trúc rẽ nhánh cấu trúc lặp phù hợp để giải toán đặt

3 Thái độ

- Tự giác, tích cực, chủ động giải tập II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy chiếu Projector, máy vi tính để giới thiệu ví dụ minh họa, số chương trình mẫu

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: Nhắc lại kiến thức học tổ chức rẽ nhánh lặp

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Yêu cầu học sinh nhắc lại cấu trúc rẽ

nhánh

- Chiếu chương trình tìm giá trị lớn hai số, có sử dụng lệnh rẽ nhánh dạng đủ

Var a,b : Integer; Begin

Readln(a,b);

If a>b then write(a) else write(b); readln;

end

- Hỏi: Chương trình thực cơng việc gì?

1 Độc lập suy nghĩ để trả lời

If <btđk> then <lệnh 1> Else <lệnh 2>; If <btđk> then <lệnh>;

(38)

- Yêu cầu học sinh viết lại chương trình cách sử dụng lệnh rẽ nhánh dạng thiếu

2 Yêu cầu học sinh nhắc lại cấu trúc lệnh lặp học

- Chiếu lên bảng hai chương trình chuẩn bị sẵn, chương trình sử dung lệnh lặp For chương trình sử dụng lặp while

- Yêu cầu: So sánh giống khác dạng lệnh

Var a,b : Integer; Begin

Readln(a,b); max:=b If a>b then max:=a; write(max); readln; end

2 Suy nghĩ trả lời

For <biến đếm>:=<Giá trị đầu> To <Giá trị cuối> Do <lệnh>;

While <điều kiện> Do <lệnh cần lặp>; - Quan sát, suy nghĩ trả lời

-Giống: Đều lệnh lặp

-Khác: For lặp với số lần xác định trước While lặp với số lần chưa xác định

2 Hoạt động 2: Rèn luyện kĩ vận dụng tổ chức lặp.

(39)

1 Tìm hiểu tập giải - Chiếu nội dung ví dụ lên bảng

- Hỏi: Có thể khai triển biểu thức Y thành tổng số hạng nào?

- Nhìn vào cơng thức khai triển, cho biết N lấy giá trị đoạn nào?

- Hỏi: Ta sử dụng cấu trúc điều khiển lặp phù hợp?

- Chia lớp làm ba nhóm, u cầu viết chương trình lên bìa

- Thu phiếu trả lời, chiếu kết lên bảng - Gọi học sinh nhóm khác nhận xét đánh giá bổ sung

2 Tìm hiểu nội dung ví dụ định hướng học sinh giải nhà

- Chiếu nội dung ví dụ lên bảng

- Hãy cho biết N nhận giá trị đoạn nào? xác định chưa?

- Hỏi: Dùng cấu trúc điều khiển thích hợp?

-Yêu cầu học sinh nhà lập trình máy, tiết sau nộp lại cho giáo viên

1 Quan sát suy nghĩ để giải toán

Y = 12 + 32 + 34 + + 5051 50

- Sử dụng cấu trúc lặp có số lần xác định

- Thảo luận theo nhóm để viết chương trình lên bìa

- Báo cáo kết nhóm

- Nhận xét, đánh giá bổ sung thiếu sót nhóm khác

2 Quan sát theo dõi định hướng giáo viên

- Chưa xác định cận cuối

- Dùng cấu trúc lặp có số lần chưa xác định

- Ghi nhớ làm tập nhà IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Có hai cấu trúc lặp:

+ Lặp For: Số lần lặp xác định + Lặp While: Số lần lặp chưa xác định

2 Câu hỏi tập nhà

- Hãy viết lại chương trình lệnh lặp For thay lệnh lặp While Hãy cho biết, toán sử dụng lệnh lặp tốt

(40)

I MỤC TIÊU

1 Kiến thức

- Biết kiểu liệu kiểu mảng chiều Biết loại biến có số

- Biết cấu trúc tạo kiểu mảng chiều cách khai báo biến khiểu mảng chiều

2 Kĩ năng

- Tạo kiểu mảng chiều sử dụng biến mảng chiều ngôn ngữ lập trình Pascal để giải số tốn cụ thể

II ĐỒ DÙNG DẠY HỌC

- Máy chiếu Projector, máy vi tính để giới thiệu ví dụ minh họa

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 ý nghĩa mảng chiều

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Chiếu đề chương trình ví dụ lên

bảng

- Hỏi: Khi N lớn chương trình có hạn chế nào?

- Dẫn dắt: Để khắc phục hạn chế trên, người ta thường ghép chung biến thành dãy đặt cho chung tên đánh cho phần tử số

2 Yêu cầu học sinh tham khảo sách giáo khoa hỏi: Em hiểu mảng chiều?

- Hỏi: Để mô tả mảng chiều, ta cần xác định yếu tố nào?

1 Quan sát hình, suy nghĩ trả lời

- Phải khai báo nhiều biến Chương trình phải viết dài

2 Nghiên cứu sách giáo khoa để trả lời

(41)

2 Hoạt động 2: Tạo kiểu mảng chiều khai báo biến mảng.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Yêu cầu học sinh nghiên cứu sách giáo

khoa cho biết cách tạo kiểu liệu mảng chiều ngôn ngữ lập trình Pascal

- Tìm ví dụ để minh họa

- Gọi học sinh khác, hỏi: Ý nghĩa lệnh bạn vừa viết?

- Chiếu lên bảng số khai báo kiểu mảng chiều

Type

Arrayr=array[1 200] of real; Arrayr=array[byte] of real;

Arrayb=array[-100 0] of boolean; - Hỏi: Những khai báo đúng?

2 Yêu cầu học sinh cho biết cách khai báo biến ví dụ khai báo biến mảng ứng với kiểu liệu vừa tạo

- Gọi học sinh khác, hỏi: Ý nghĩa lệnh bạn vừa viết?

- Dung lượng nhớ biến a chiếm bao nhiêu?

- Chú ý cho học sinh cách đặt tên kiểu liệu tên biến, tránh nhầm lẫn

3 Giới thiệu cách tham chiếu đến phần tử mảng chiều Yêu cầu học sinh lấy ví dụ

1 Tham khảo sách giáo khoa trả lời - TYPE tên_km= Array[kiểu_cs] Of kiểu_thành_phần;

- Ví dụ: Type mmc=array[1 100] of integer;

- Tạo kiểu liệu có tên mmc, gồm 100 phần tử, có kiểu nguyên

- Quan sát bảng chọn khai báo

Arrayr=array[1 200] of real; Arrayb=array[-100 0] of boolean;

2 Tham khảo sách giáo khoa trả lời - VAR tên_biến:tên_km;

- Ví dụ: Var a:mmc;

- Khai báo biến mảng chiều - a chiếm 200 byte nhớ

3 Theo dõi hướng dẫn giáo viên độc lập suy nghĩ để trả lời

a[1] phần tử vị trí mảng a a[i] phần tử vị trí i mảng a

3 Hoạt động 3: Rèn luyện kĩ sử dụng kiểu mảng chiều.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Giới thiệu đề

- Chiếu đề lên bảng

- Yêu cầu học sinh xác định liệu vào,

1 Quan sát đề bài, theo dõi yêu cầu cần giải đề

(42)

dữ liệu

- Hỏi: Nếu không sử dụng biến mảng chiều, ta giải tốn khơng? Khó khăn khơng?

2 Định hướng: Sử dụng kiểu mảng chiều để giải toán

- Yêu cầu học sinh khai báo kiểu mảng - Yêu cầu học sinh khai báo biến mảng - u cầu học sinh tìm nhiệm vụ cần giải

3 Chia lớp thành nhóm Yêu cầu viết chương trình lên giấy bìa

- Thu phiếu trả lời, chiếu lên bảng Gọi học sinh nhóm khác nhận xét đánh giá Chuẩn hố chương trình cho học sinh

trong tuần

- Ra: Số ntb nhiệt độ trung bình tuần số nch số ngày có nhiệt độ cao nhiệt độ trung bình

- Được

- Chương trình dài dịng, khó sửa đổi

2 Theo dõi hướng dẫn giáo viên Type tuan=array[1 7] of real;

Var ndtuan : tuan; - Nhập giá trị cho mảng a

- Tính trung bình cộng giá trị mảng - Đếm số phần tử có giá trị lớn trung bình cộng tính

3 Thảo luận theo nhóm để viết chương trình

- Báo cáo kết viết

- Nhận xét, đánh giá bổ sung thiếu sót nhóm khác

4 Quan sát ghi nhớ IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Cách tạo kiểu mảng chiều cách khai báo biến

TYPE tên_kiểu_mảng = Array[kiểu_chỉ_số] Of kiểu_thành_phần; VAR tên_biến:tên_kiểu_mảng;

- Tham chiếu đến phần tử: Tên_biến[chỉ số]

2 Câu hỏi tập nhà

- Viết chương trình nhập vào mảng gồm n số nguyên (1<=n<=100), số có giá trị tuyệt đối khơng q 300 Tính tổng giá trị phần tử có giá trị chia hết cho k

(43)

KIỂU MẢNG (TIẾT 2/2) I MỤC TIÊU

1 Kiến thức

- Biết kiểu liệu kiểu mảng hai chiều

- Biết cách tạo kiểu mảng hai chiều chiều, cách khai báo biến, tham chiếu đến phần tử mảng

2 Kĩ năng

- Tạo kiểu mảng hai chiều khai báo biến mảng hai chiều ngơn ngữ lập trình Pascal Sử dụng biến mảng để giải số toán cụ thể II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính, máy chiếu Projector, sách giáo khoa, máy chiếu Overhead, phiếu học tập

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 ý nghĩa kiểu mảng hai chiều

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Giới thiệu ví dụ sách giáo khoa

Tính đưa hình bảng cửu chương - Hỏi: Sử dụng kiến thức mảng chiều, đưa cách sử dụng kiểu mảng để lưu trữ bảng cửu chương

- Với cách lưu trữ ta phải khai báo biến mảng?

- Có khó khăn gì?

- Để khắc phục khó khăn này, ta xem mảng chiều phần tử, ta ghép mảng chiều thành mảng hai chiều

- Yêu cầu học sinh nhận xét mảng hai chiều

1 Chú ý theo dõi yêu cầu dẫn dắt giáo viên

- Sử dụng mảng chiều, mảng lưu hàng bảng

- Khai báo biến mảng chiều - Khai báo nhiều biến, viết chương trình nhập xuất liệu dài

(44)

2 Các yếu tố xác định mảng hai chiều - Hỏi: Để mô tả kiểu mảng hai chiều, ta cần xác định yếu tố nào?

mỗi phần tử mảng chiều Các yếu tố để xây dựng mảng hai chiều:

- Tên kiểu mảng

- Số phần tử dòng, số phần tử cột

- Kiểu liệu chung phần tử

2 Hoạt động 2: Tìm hiểu kiểu mảng hai chiều.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Yêu cầu học sinh nghiên cứu sách giáo

khoa cho biết cách tạo kiểu liệu mảng hai chiều

- Yêu cầu học sinh tìm ví dụ minh họa - Gọi học sinh khác, hỏi: Ý nghĩa lệnh mà bạn vừa viết?

2 Yêu cầu học sinh cho biết cách khai báo biến ví dụ khai báo biến mảng hai chiều ứng với kiểu liệu vừa tạo Giới thiệu cách tham chiếu đến phần tử mảng chiều Yêu cầu học sinh lấy ví dụ

1 Tham khảo sách giáo khoa trả lời - TYPE tên_kmhc= Array[csd,csc] Of kiểu_thành_phần;

- Ví dụ: Type mhc=array[1 10,1 5] of integer;

- Lệnh dùng để tạo môt kiểu mảng hai chiều có tên mhc gồm 10 dịng cột, phần tử có kiểu liệu integer

2 Tham khảo sách giáo khoa trả lời - VAR tên_biến:tên_kmhc;

- Ví dụ: Var a:mhc;

3 Quan sát cấu trúc chung suy nghĩ tìm ví dụ

a[1,2] phần tử dịng số 1, cột số mảng a

a[i,j] phần tử dòng số i, cột số j mảng a

3 Hoạt động 3: Rèn luyện kĩ sử dụng kiểu mảng hai chiều.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Giowis thiệu đề

- Chiếu đề lên bảng

- Yêu cầu học sinh xác định cách thức tổ chức liệu

- Yêu cầu học sinh nhiệm vụ tốn cần giải

1 Quan sát đề bài, theo dõi yêu cầu cần giải đề

- Dùng mảng hai chiều - Điền giá trị cho a[i,j]=i*j

(45)

2 Chia lớp thành nhóm u cầu viết chương trình lên giấy bìa

- Thu phiếu trả lời, chiếu lên bảng Gọi học sinh nhóm khác nhận xét đánh giá Chuẩn hố chương trình cho học sinh cách chiếu chương trình mẫu để học sinh quan sát thực chương trình để học sinh thấy kết

4 Chiếu chương trình ví dụ 2, sách giáo khoa, trang 62 để học sinh quan sát - Thực chương trình để học sinh thấy kết

- Giáo viên cần giải thích số chỗ học sinh chưa hiểu yêu cầu học sinh nhà tìm hiểu thêm

2 Thảo luận theo nhóm để viết chương trình

- Báo cáo kết hoàn thành - Nhận xét, đánh giá bổ sung thiếu sót nhóm khác

3 Ghi nhớ nội dung chỉnh sửa

4 Quan sát chương trình ý giải thích giáo viên

- Đặt số câu hỏi thắc mắc

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Tạo kiểu liệu mảng hai chiều:

TYPE tên_kiểu_mảng = Array[kiểu_chỉ_số_dòng, kiểu_chỉ_số_cột] Of kiểu_thành_phần;

- Khai báo biến mảng chiều: VAR tên_biến:tên_kiểu_mảng; - Tham chiếu đến phần tử: Tên_biến[chỉ_số_dòng, chỉ_số_cột]

2 Câu hỏi tập nhà

- Làm tập số 8, 9, sách giáo khoa, trang 79, 80

- Xem trước nội dung thực hành 3, sách giáo khoa, trang 63

BÀI THỰC HÀNH SỐ 3 I MỤC TIÊU

1 Kiến thức

- Củng cố lại kiến thức kiểu liệu mảng

(46)

- Nâng cao kĩ sử dụng số lệnh kiểu liệu mảng chiều lập trình, cụ thể:

+ Khai báo kiểu liệu mảng chiều + Nhập/xuất liệu cho mảng

+ Duyệt qua tất phần tử mảng để xử lý phần tử - Biết giải số toán thường gặp:

+ Tính tổng phần tử thoả mãn điều kiện + Đếm số phần tử thoả mãn điều kiện + Tìm phần tử lớn nhất, nhỏ

3 Thái độ

- Góp phần rèn luyện tác phong, tư lập trình: Tự giác, tich cực, chủ động sáng tạo tìm kiếm kiến thức

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Phịng máy vi tính, máy chiếu Projector để minh họa

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 cách sử dụng lệnh kiểu liệu mảng chiều qua chương trình có sẵn

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu chương trình câu a, sách giáo

khoa, trang 63 chạy thử chương trình - Chiếu chương trình lên bảng

- Hỏi: Khai báo Uses CRT; có ý nghĩa gì? - Hỏi: Myarray tên kiểu liệu hay tên biến?

- Hỏi: Vai trị nmax n có khác nhau?

- Hỏi: Những dịng lệnh dùng để tạo biến mảng a?

- Thực chương trình để học sinh thấy kết

1 Quan sát, ý trả lời

- Khai báo thư viện chương trình Crt để sử dụng thủ tục Clrscr; - Tên kiểu liệu

- nmax số phần tử tối đa chứa biến mảng a n số phần tử thực tế a

(47)

- Hỏi: Lệnh gán a[i]:=random(300)-random(300) có ý nghĩa gì?

- Hỏi: Lệnh For i:=1 to n Write(A[i]:5); có ý nghĩa gì?

- Hỏi: Lệnh For-Do cuối thực nhiệm vụ gì?

- Hỏi: Lệnh s:=s+a[i]; thực lần?

- Thực lại chương trình lần cuối để học sinh thấy kết

2 Sửa chương trình câu a để chương trình giải toán câu b

- Chiếu lên hình lệnh cần thêm vào chương trình câu a

- Hỏi: Ý nghĩa biến Posi neg? - Hỏi: Chức lệnh?

If a[i]>0 then posi:=posi+1 else if a[i]<0 then neg:=neg+1;

- Yêu cầu học sinh thêm vào vị trí cần thiết để chương trình đếm số

- Yêu cầu học sinh gõ nội dung lưu lại với tên caub.pas Thực chương trình báo cáo kết

- Lệnh sinh ngẫu nhíên giá trị cho mảng a từ -299 đến 299

- In hình giá trị phần tử mảng a

- Cộng phần tử chia hết cho k - Có số lần số phần tử a[i] chia hết k

- Quan sát giáo viên thực chương trình kết hình

2 Quan sát ý theo dõi câu hỏi giáo viên:

- Quan sát lệnh suy nghĩ vị trí cần sửa chương trình câu a - Dùng để lưu số lượng đếm - Đếm số dương đếm số âm

- Chỉ vị trí cần thêm vào chương trình

- Lưu chương trình Thực chương trình thơng báo kết

2 Hoạt động 2: Rèn luyện kĩ lập trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Lấy ví dụ thực tiễn: Người mù tìm

viên sỏi có kích thước lớn dãy viên sỏi để gợi ý cho học sinh thuật tốn tìm giá trị lớn

- u cầu: nêu thuật tốn tìm phần tử có giá trị lớn

2 Tìm hiểu chương trình tìm số giá trị lớn

- Chiếu chương trình ví dụ, sách giáo khoa, trang 64

- Hỏi: Vai trị biến j chương trình?

1 Theo dõi ví dụ giáo viên

- So sánh từ trái sang phải, giữ lại số phần tử lớn Quan sát chương trình, suy nghĩ trả lời

(48)

- Hỏi: Nếu muốn tìm phần tử nhỏ nhất, cần sửa chỗ nào?

- Hỏi: Nếu muốn tìm phần tử lớn với số lớn ta sửa chỗ nào?

3 Đặt yêu cầu mới: Viết chương trình đưa số phần tử có giá trị lớn

- Hỏi: Cần giữ lại đoạn chương trình tìm giá trị lớn không?

- Hỏi: Cần thêm lệnh nữa? - Hỏi: Vị trí thêm lệnh đó?

- u cầu: Viết chương trình hồn thiện

- Yêu cầu học sinh nhập liệu vào giáo viên báo kết

- Đánh giá kết học sinh

- Phép so sánh a[i]<a[j]

- Chuyển thứ tự duyệt từ n-1 Theo dõi yêu cầu, suy nghĩ câu hỏi định hướng để viết chương trình - Có

- Lệnh để in số có giá trị giá trị lớn tìm

- Sau tìm giá trị lớn - Soạn chương trình vào máy Thực chương trình thơng báo kết

- Nhập liệu vào thông báo cho giáo viên liệu

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

Một số thuật tốn bản:

+ Tính tổng phần tử thoả mãn điều kiện + Đếm số phần tử thoả mãn điều kiện + Tìm phần tử lớn nhất, nhỏ

2 Câu hỏi tập nhà

- Xem nội dung thực hành số 4, sách giáo khoa, trang 65

BÀI THỰC HÀNH SỐ 4 I MỤC TIÊU

1 Kiến thức

- Củng cố lại kiến thức lập trình với kiểu liệu mảng - Làm quen với thuật toán xếp đơn giản

(49)

- Rèn luyện kĩ sử dụng kiểu liệu có cấu trúc, kĩ diễn đạt thuật tốn chương trình sử dụng liệu kiểu mảng

- Rèn luyện kĩ nhận xét, phân tích đề xuất cách giải tốn cho chương trình chạy nhanh

3 Thái độ

- Tự giác, chủ động thực hành II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Phịng máy vi tính, máy chiếu Projector để hướng dẫn

2 Chuẩn bị học sinh

- Sách giáo khoa, chương trình viết sẵn III HOẠT ĐỘNG DẠY-HỌC

1 Hoạt động 1: Tìm hiểu chương trình diễn đạt thuật tốn xếp

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Gợi ý cho học sinh thuật toán xếp

tăng dần

- Lấy ví dụ thực tiễn: Người mù xếp dãy viên bi theo kích thước khơng giảm

- u cầu: Vạch bước để xếp phần tử mảng khơng giảm

2 Tìm hiểu chương trình ví dụ, sách giáo khoa, trang 65

- Chiếu chương trình ví dụ lên bảng

- Hỏi: Vai trị biến i, j chương trình? vịng lặp For đoạn chương trình xếp có ý nghĩa gì?

- Hỏi: Ba lệnh tg:=a[i]; a[i]:=a[i+1]; a[i+1]:=tg; có ý nghĩa gì?

- Thực chương trình, nhập liệu để học sinh thấy kết chương trình

1 Chú ý theo dõi dẫn dắt giáo viên để trả lời câu hỏi

- Lần lượt lấy phần tử từ trái qua phải

- Cứ phần tử ta đem so sánh với phần tử đứng bên phải

- Nếu nhỏ đổi chỗ

2 Quan sát chương trình, suy nghĩ câu hỏi trả lời

- Biến i, j dùng làm số

- Mỗi vòng lặp For ứng với phép duyệt

- Dùng để đổi giá trị hai phần tử a[i] với a[i+1]

(50)

- Hỏi: Chương trình làm cơng việc gì? Sửa chương trình để giải tốn câu b

- Đặt yêu cầu mới: Khai báo thêm biến nguyên Dem bổ sung vào chương trình đoạn lệnh cần thiết để biến Dem tính số lần thực tráo đổi thuật toán In kết tìm hình

- Hỏi: Đoạn chương trình dùng để thực tráo đổi giá trị?

- Yêu cầu hoc sinh viết lệnh để đếm số lần tráo đổi

- Hỏi: Lệnh viết vị trí chương trình?

- Yêu cầu học sinh soạn chương trình vào máy

- Yêu cầu học sinh nhập liệu vào giáo viên thông báo kết

- Đánh giá kết học sinh

- Chương trình xếp dãy số thao thứ tự không giảm

3 Quan sát yêu cầu mới, ý định hướng giải giáo viên

tg:=a[i]; a[i]:=a[i+1]; a[i+1]:=tg; - Dem := Dem+1;

- Ngay sau đoạn lệnh tráo đổi

- Soạn chương trình vào máy, thực chương trình thơng báo kết

- Nhập liệu theo yêu cầu giáo viên, thực chương trình thơng báo kết sau thực

2 Hoạt động 2: Rèn luyện kĩ nhận xét, phân tích đề xuất cách giải tốn cho chương trình chạy nhanh

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Xác định toán

- Chiếu đề lên bảng

- Yêu cầu: Xác định liệu vào, liệu ra? - Gợi ý để học sinh đề xuất thuật tốn thơ Giới thiệu chương trình chưa cải tiến - Chiếu chương trình diễn đạt thuật tốn - Thực chương trình để học sinh biết thời gian thực chương trình kết chương trình

- Hỏi: Trong chương trình phải thực

1 Quan sát đề tả lời câu hỏi - Vào: Mảng A gồm n phần tử - Ra: Mảng B gồm n phần tử

- Tại vị trí i ta tính tổng giá trị phần tử từ đến i

2 Quan sát chương trình bảng - Quan sát giáo viên thực hiện, nhận xét thời gian thực chương trình

(51)

bao nhiêu phép cộng?

- Hỏi: Có cách để cải tiến?

- Lệnh thay lệnh chương trình? Viết vị trí nào?

3 u cầu: Viết chương trình hồn thiện

4 Tiểu kết: Cùng tốn, có nhiều cách giải khác Người lập trình cần chọn cách cho máy thực nhanh

- Để tính bước thứ i, ta sử dụng kết tính bước thứ i-1

B[i]:=B[i-1]+A[i]; - Thay đoạn lệnh

For j:=1 to i B[i]:=B[i]+A[j]; Soạn chương trình vào máy, thực chương trình thông báo kết

- Nhận xét thời gian thực chương trình so với chương trình trước cải tiến

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Thuật toán xếp đơn giản

- Một tốn có nhiều cách viết thành chương trình Cần chọn cách có số phép tính

2 Câu hỏi tập nhà

- Xem lại tất kiến thức học, bao gồm: lệnh bản, lệnh điều khiển, kiểu liệu bản, kiểu liệu có cấu trúc

- Tiết sau kiểm tra thực hành, thời gian 45 phút

ÔN TẬP HỌC KỲ 1 I MỤC TIÊU

1 Kiến thức

- Học sinh nắm toàn kiến thức học từ đầu năm học đến

2 Kĩ năng

- Rèn lun kĩ nhận xét, phân tích tốn II ĐỒ DÙNG DẠY HỌC

(52)

- Máy chiếu qua đầu, bìa trong, sách giáo khoa

2 Chuẩn bị học sinh

- Sách giáo khoa, số chương trình tập III HOẠT ĐỘNG DẠY-HỌC

1 Hoạt động 1: Nhắc lại kiến thức cũ học

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Đặt câu hỏi gợi ý để học sinh tự nhắc lại

kiến thức học

- Em hiểu lập trình ngơn ngữ lập trình?

- Các loại chương trình dịch?

- Các thành phần ngơn ngữ lập trình?

- Các khái niệm ngơn ngữ lập trình?

- Cấu trúc chung chương trình TP? - Nêu tên kiểu liệu chuẩn? - Nêu nhóm phép tốn học? - Các loại biểu thức?

- Chức thực lệnh gán?

- Nêu tên chức số hàm số học?

- Tổ chức vào/ra - Tổ chức rẽ nhánh - Tổ chức lặp

- Kiểu mảng

Chú ý, theo dõi để trả lời câu hỏi - Lập trình q trình diễn đạt thuật tốn ngơn ngữ lập trình

- Biên dịch thơng dịch

- Bảng chữ cái, cú pháp ngữ nghĩa - Khái niệm tên, biến, thích - Gồm phần: Phần khai báo phần thân

- Số nguyên, số thực, ký tự, logic

- Phép toán số học, phép toán quan hệ, phép toán logic

- Biểu thức số học, biểu thức quan hệ biểu thức logic

- Dùng để tính tốn biểu thức gán giá trị cho biến

- Hàm bình phương, hàm bậc hai, hàm giá trị tuyệt đối, hàm sin, hàm cos - Lệnh Read()/readln();

- Lệnh write()/writeln();

- If <BTĐK> then <lệnh 1> else <lệnh 2>; For tiến

For lùi While <> - Array

2 Hoạt động 2: Rèn luyện kĩ năng.

(53)

1 Xác định toán

- Chiếu nội dung đề lên bảng - Chia lớp làm hai nhóm

Nhóm 1: Nêu câu hỏi phân tích

Nhóm 2: Trả lời câu hỏi phân tích nhóm

- Giáo viên góp ý bổ sung cho hai nhóm

2 Rèn luyện kỹ lập trình - Chia lớp thành nhóm

- u cầu: Viết chương trình hồn thiện lên bìa

- Thu phiếu học tập, chiếu kết lên bảng Gọi học sinh nhóm khác nhận xét đánh giá bổ sung

3 Chuẩn hóa kiến thức chương trình mẫu giáo viên Thực chương trình, nhập liệu để học sinh thấy kết chương trình

1 Quan sát, theo dõi đề định hướng giáo viên để xác định tốn - Nhóm 1:

+ Dữ liệu vào + Dữ liệu

+ Các nhiệm vụ phải thực tốn

- Nhóm 2:

+ Số N N số nguyên

+ Số lượng số chẵn C số lẽ L + 1- Nhập liệu

2- Đếm số lượng số chẵn, số lẽ 3- Đưa kết hình Làm việc theo nhóm

- Thảo luận theo nhóm để viết chương trình

- Báo cáo kết

- Nhận xét, đánh giá bổ sung thiếu sót nhóm khác

3 Theo dõi ghi nhớ

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Giáo viên yêu cầu học sinh nhắc lại số nội dung ơn tập tiết học

2 Câu hỏi tập nhà

- Chuẩn bị kiến thức cho tiết sau kiểm tra học kỳ 1: Xem lại toàn kiến thức ôn tập, đặc biệt trọng cấu trúc lặp rẽ nhánh, kiểu mảng

(54)

I MỤC TIÊU

1 Kiến thức

- Biết kiểu liệu mới, biết khái niệm kiểu xâu - Phân biệt giống khác kiểu mảng ký tự với xâu ký tự

- Biết cách khai báo biến, nhập xuất liệu, tham chiếu đến ký tự xâu

- Biết phép toán liên quan xâu

2 Kĩ năng

- Khai báo biến kiểu xâu ngơn ngữ lập trình Pascal Sử dụng biến xâu phép toán xâu để giải toán đơn giản

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính, máy chiếu projector để giới thiệu ví dụ

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 xâu cách sử dụng.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu ý nghĩa xâu ký tự

- Chiếu đề toán đặt vấn đề: Viết chương trình nhập họ tên 30 học sinh lớp

- Hỏi: Ta chọn kiểu liệu nào? Khai báo biến nào?

- Yêu cầu học sinh: Viết đoạn lệnh để nhập xuất liệu cho phần tử

- Hỏi: Có khó khăn gặp phải?

- Dẫn dắt: Cần có kiểu liệu cho phép ta nhập/xuất liệu cho xâu lệnh

1 Quan sát, suy nghĩ trả lời

- Kiểu mảng chiều gồm 30 ký tự - Khai báo biến mảng A để lưu họ tên học sinh

Readln(A[1]);Readln(A[2]); Readln(A[3]);Readln(A[4]);

(55)

2 Tìm hiểu kiểu xâu

- Chiếu lên bảng cách khai báo biến xâu ngơn ngữ lập trình Pascal

- Hỏi: Ý nghĩa từ String, [n]

- Hỏi: Khi khai báo khơng có [n] số lượng ký tự tối đa bao nhiêu?

- Yêu cầu học sinh cho ví dụ xâu ký tự - Hỏi: Xâu có ký tự?

- Diễn giải: Mỗi ký tự gọi phần tử xâu Số lượng ký tự xâu gọi độ dài xâu

- Hỏi: Xâu gồm ký tự trống viết nào? số lượng ký tự bao nhiêu? - Hỏi: Xâu rỗng viết nào? số lượng ký tự bao nhiêu?

3 Nhập/xuất liệu cho biến xâu ngôn ngữ Pascal

- Giới thiệu cấu trúc chung thủ tục nhập/xuất liêu

- Yêu cầu học sinh tìm ví dụ cụ thể

- Hỏi: Khi viết lệnh nhập/xuất liệu cho biến xâu, có khác so với biến mảng ký tự

- Dẫn dắt: Ta sử dụng lệnh gán để nhập giá trị cho biến xâu Cấu trúc chung: tên_biến_xâu:=hằng_xâu;

- u cầu học sinh tìm ví dụ cụ thể Tham chiếu đến ký tự xâu - Giới thiệu cấu trúc chung

- Hỏi: Có giống khác so với cách tham chiếu đến phần tử mảng

- Yêu cầu học sinh tìm ví dụ Kiểm tra kiến thức

2 Quan sát cấu trúc khai báo tham khảo sách giáo khoa

- String tên kiểu xâu

- [n] giá trị quy định số lượng ký tự tối đa mà biến xâu chứa

- Số ký tự tối đa 255 - Ví dụ: ‘HA NOI’

- Xâu có ký tự, dấu cách ký tự

- Ký hiệu xâu gồm ký tự trống ‘ ’ Xâu có độ dài - Ký hiệu xâu rỗng ‘ ’ Xâu có độ dài

3 Quan sát bảng để trả lời

- Ví dụ: Readln(hoten);

- Ví dụ: Write(‘Ho ten ’,hoten);

- Viết lệnh nhập nguyên cho xâu Viết lệnh gọn hơn, chương trình gọn

- Ví dụ: St:= ‘HA NOI’;

4 Quan sát suy nghĩ để trả lời - Giống cấu trúc chung tham chiếu tên biến[chỉ số]

- Ví dụ: st[2]

(56)

- Chiếu nội dung tập kiểm tra kiến thức: Var st:string[1]; c:char;

Begin

c:=st[1]; {1} c:=st; {2} End

- Hỏi: Trong hai lệnh {1} {2}, lệnh đúng?

- Thực chương trình để học sinh tự kiểm nghiệm suy luận

độc lập suy nghĩ

- Lệnh {1}

- Lệnh {2} sai Không thể gán xâu cho ký tự

2 Hoạt động 2: Tìm hiểu phép toán liên quan đến xâu.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Gợi nhớ phép toán học

- Hỏi: Hãy nhắc lại phép toán học kiểu liệu chuẩn

2 Tìm hiểu chức số phép tốn kiểu xâu qua số ví dụ - Chiếu chương trình ví dụ:

Var st:string; Begin

st:= ‘Ha’+‘Noi’; Write(st);

readln; End

- Hỏi: Kết chương trình in hình?

- Thực chương trình để học sinh thấy kết

- Yêu cầu học sinh tìm số ví dụ khác

- Hỏi: Chức phép cộng ?

- Giới thiệu thêm số ví dụ khác yêu cầu học sinh cho biết kết

1 Chú ý theo dõi, suy nghĩ trả lời - Phép toán số học

- Phép toán so sánh - Phép toán logic

2 Quan sát ví dụ, suy nghĩ trả lời - Quan sát chương trình

- Kết cho ta: st = ‘HA NOI’ - Quan sát kết chương trình - Ví dụ: st:= ‘HA NOI’ + ‘Co ho GUOM’ Kết quả:

(57)

st:= ‘Ha’ +‘Noi’; st:= ‘Ha ’+‘Noi’; st:= ‘ ’ + ‘Ha Noi’;

st:= ‘Ha Noi’ + ‘Việt’ + ‘Nam’;

- Chiếu chương trình ví dụ phép so sánh xâu

Var bo:boolean; Begin

bo:= ‘AB’ < ‘AC’; Write(bo);

readln; End

- Hỏi: Kết chương trình in hình?

- Thực chương trình để học sinh thấy kết

- Hỏi: Còn phép so sánh nữa? - Chiếu ví dụ phép so sánh yêu cầu học sinh cho biết kết phép so sánh

‘AB’ < ‘ABC’ ‘AC’ < ‘ABC’

- Lưu ý cho học sinh: Một xâu có độ dài nhỏ lớn (>) xâu có độ dài lớn

st:= ‘HaNoi’; st:= ‘Ha Noi’; st:= ‘ Ha Noi’;

st:= ‘Ha NoiViệtNam’;

- Quan sát chương trình để dự tính kết

- Kết là: TRUE

- Quan sát kết chương trình để kiểm chứng suy luận

- Có phép <, <=, >=, <>, =

- Kết quả: True - Kết quả: False

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Khai báo biến: VAR tên_biến : STRING[độ dài lớn xâu]; - Nhập xuất giá trị cho biến xâu: read/readln(); write/writeln(); - Tham chiếu đến ký tự xâu: tên_biến[chỉ_số]

- Phép ghép xâu: ký hiệu +, sử dụng để ghép nhiều xâu thành xâu - Các phép so sánh: =, <>, >, <, <=, >=: thực việc so sánh hai xâu

2 Câu hỏi tập nhà

(58)

KIỂU DỮ LIỆU XÂU (TIẾT 2/2) I MỤC TIÊU

1 Kiến thức

- Biết lợi ích hàm thủ tục liên quan xâu ngơn ngữ lập trình Pascal

- Nắm cấu trúc chung chức số hàm thủ tục liên quan đến xâu ngơn ngữ lập trình Pascal

2 Kĩ năng

- Nhận biết bước đầu sử dụng số hàm thủ tục để giải số tập đơn giản liên quan

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính, máy chiếu projector để giới thiệu ví dụ, sách giáo viên

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 số hàm thủ tục chuẩn liên quan xâu trong ngơn ngữ lập trình Pascal.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Giới thiệu cấu trúc chung hàm

length(st) lên bảng

- Hỏi: Ý nghĩa Length st? - Chiếu chương trình ví dụ:

Var st:string; Begin

st:= ‘Ha Noi’; Write(length(st)); readln;

End

- Hỏi: Kết chương trình in hình?

- Thực chương trình để học sinh thấy kết

1 Quan sát cấu trúc chung

- Length: tên hàm, có nghĩa độ dài, st: biểu thức xâu ký tự

- Quan sát chương trình để dự tính kết

- Kết là:

(59)

- Hỏi: Chức hàm length() gì? - Chiếu đề tập ứng dụng: Viết chương trình nhập xâu, in hình số ký tự ‘a’ có xâu

2 Giới thiệu cấu trúc chung hàm Upcase(ch)

- Chiếu chương trình ví dụ: Var ch:char;

Begin ch:= ‘h’;

Write(upcase(ch)); readln;

End

- Hỏi: Kết chương trình in hình?

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức hàm upcase()? - Chiếu tập ứng dụng: Viết chương trình nhập xâu, in hình xâu dạng in hoa

3 Giới thiệu cấu trúc chung hàm Pos(s1,s2)

- Chiếu chương trình ví dụ: Var vt:byte;

Begin

vt:=Pos(‘cd’, ‘abcdefcd’); Write(vt);

readln; End

- Hỏi: Kết chương trình in hình?

- Thực chương trình để học sinh thấy kết

- Hàm cho số lượng ký tự xâu st

2 Quan sát cấu trúc chung hàm Upcase

- Quan sát chương trình để dự tính kết

- Kết là: H

- Quan sát kết chương trình - Cho giá trị chữ in hoa ch Var st:string;

Begin readln(st);

For i:=1 to length(st) write(upcase(st[i])); End

3 Quan sát cấu trúc chung hàm Pos ví dụ để biết chức

- Quan sát chương trình để dự tính kết

- Kết là:

(60)

- Hỏi: Chức hàm pos?

- Thay tham số hàm Pos chương trình Pos(‘k’, ‘abc’) Hỏi kết hàm bao nhiêu?

- Chiếu tập ứng dụng: Viết chương trình nhập vào xâu st Xét xem xâu có dấu cách hay khơng?

- Hỏi: Có cách giải khác?

4 Giới thiệu cấu trúc chung hàm copy(st,vt,n)

- Chiếu chương trình ví dụ: Var st:string;

Begin

st:=copy(‘bai tap’,3,4); Write(st);

readln; End

- Hỏi: Kết chương trình in hình?

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức hàm copy?

- Thay tham số hàm copy chương trình ví dụ sau hỏi kết in hình:

Copy(‘abc’,1,5) Copy(‘abc’,5,2) Copy(‘abc’,1,0)

- Thực chương trình để học sinh thấy

- Hàm cho giá tri số nguyên vị trí xâu st2 xâu st2

- Bằng không

Var st:string; Begin

readln(st);

if pos(‘ ’, st)<>0 then write(‘Co’) else write(‘Khong’);

End

- Có thể sử dụng For để tìm dấu cách xâu

4 Quan sát cấu trúc chug hàm copy ví dụ để biết chức

- Quan sát chương trình để dự tính kết

- Kết là: ‘i ta’

- Quan sát kết chương trình - Hàm cho giá trị xâu ký tự lấy xâu st, gồm n ký tự bắt đầu vị trí vt

Cho giá trị là: ‘abc’ Cho giá trị xâu rỗng Cho giá trị xâu rỗng

(61)

kết

5 Giới thiệu cấu trúc chung thủ tục delete(st,vt,n);

- Chiếu chương trình ví dụ: Var st:string;

Begin

st:= ‘HaNoi’; delete(st,3,2); Write(st); readln; End

- Hỏi: Kết chương trình in hình?

- Thực chương trình để học sinh thấy kết

- Hỏi chức thủ tục delete();

- Thay lệnh gán st:= ‘HaNoi’; thủ tục xóa lệnh sau hỏi kết in hình

st:=’abc’; Delete(st,1,5); st:=’abc’; Delete(st,5,2); st:=’abc’; Delete(st,1,0);

- Chiếu tập ứng dụng: Viết chương trình nhập xâu xoá dấu cách thừa đầu xâu

6 Giới thiệu cấu trúc chung thủ tục Insert(st1,st2,vt);

- Chiếu chương trình ví dụ: Var st1,st2:string;

kiểm nghiệm suy luận

5 Quan sát cấu trúc chung thủ tục Insert ví dụ

- Quan sát chương trình để dự tính kết

st=’Hai’

- Quan sát kết chương trình - Thủ tục thực việc xóa biến xâu st gồm n ký tự, vị trí vt

st:= ‘’; xâu rỗng st:= ‘abc’;

st:= ‘abc’;

Var st:string; begin

readln(st);

while st[1]= ‘ ’ delete(st,1,1); writeln(st);

readln; end

6 Quan sát cấu trúc chung thủ tục Insert

(62)

Begin

st2:=‘HaNoi’; st1:= ‘ ’;

insert(st1,st2,3); Write(st);

readln; End

- Hỏi: Kết chương trình in hình?

- Thực chương trình để học sinh thấy kết

- Hỏi chức thủ tục insert(); - Thay lệnh gán st2:=‘HaNoi’; thủ tục chèn lệnh sau hỏi kết quả: st2:=‘ef’; Insert(‘abc’,st2, 5);

st2:=‘ef’; Insert(‘abc’,st2, 0);

quả

- Kết st2=’Ha Noi’

- Quan sát kết chương trình - Thủ tục thực việc chèn xâu st1 vào biến xâu st2 bắt đầu vị trí vt

st2= ‘efabc’; st2= ‘abcef’;

2 Hoạt động 2: Rèn luyện kĩ vận dụng hàm thủ tục.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Xác định toán

- Chiếu nội dung đề lên bảng - Xác định liệu vào, liệu

- Hỏi: Các nhiệm vụ giải toán này?

- Hỏi: Trong này, ta cần sử dụng hàm thủ tục nào?

2 Chia lớp làm nhóm Yêu cầu viết chương trình lên bìa

- Thu phiếu trả lời Chiếu kết lên bảng Gọi học sinh nhóm khác nhận xét, đánh giá bổ sung

3 Chiếu chương trình mẫu giáo viên viết để xác hóa lại cho học sinh

1 Quan sát, suy nghĩ để trả lời - Vào: Một xâu ký tự

- Ra: Một xâu có ký trắng hai từ

- Xố dấu cách thừa đầu xâu cuối xâu

- Xoá dấu cách thừa hai từ - Hàm Pos(), thủ tục delete();

2 Thảo luận theo nhóm để viết chương trình

- Thơng báo kếtquả

- Nhận xét bổ sung thiếu sót nhóm khác

(63)

IV ĐÁNH GIÁ CUỐI BÀI

1 Những hàm thủ tục liên quan đến xâu

- Thủ tục Delete(st,vt,n); - Thủ tục Insert(st1,st2,vt); - Hàm Copy(st,vt,n) - Hàm Length(st) - Hàm Pos(st1,st2) - Hàm UpCase(ch)

2 Câu hỏi tập nhà

- Giải tập số 10 trang 80

BÀI THỰC HÀNH SỐ 5 I MỤC TIÊU

1 Kiến thức

- Khắc sâu thêm phần kiến thức lý thuyết kiểu xâu ký tự, đặc biệt hàm thủ tục liên quan

- Nắm số thuật toán bản: tạo xâu mới, đếm số lần xuất ký tự

2 Kĩ năng

- 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ủ tuc chuẩn

3 Thái độ

- Tích cực, chủ động thực hành II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy chiếu projector để hướng dẫn Tổ chức phòng máy để học sinh có kĩ làm việc với kiểu xâu

2 Chuẩn bị học sinh

(64)

III HOẠT ĐỘNG DẠY-HỌC

1 Hoạt động 1: Tìm hiểu chương trình, đề xuất phương án cải tiến

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu đề

- Giới thiệu nội dung đề lên bảng - 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 học sinh cho hai ví dụ xâu palidrom ví dụ khơng phải palidrom

2 Tìm hiểu chương trình gợi ý - Chiếu chương trình lên bảng

- Hỏi: Chương trình sau có chức làm gì? Kết in nào?

- Thực chương trình để học sinh kiểm nghiệm suy luận

3 Cải tiến chương trình

- Nêu yêu cầu mới: Viết lại chương trình mà khơng sử dụng biến trung gian p

- Yêu cầu: Nhận xét cặp vị trí đối xứng xâu palidrom?

- Hỏi: Ký tự thứ i đối xứng với ký tự vị trí nào?

- Hỏi: Cần phải so sánh cặp ký tự xâu để biết xâu palidrom? - Hỏi: Dùng cấu trúc lặp để so sánh? - u cầu học sinh viết chương trình hồn chỉnh

- Yêu cầu học sinh nhập liệu cho sẵn giáo viên thông báo kết

- Xác nhận làm có kết

1 Quan sát, đọc kỹ đề

Phải: 12321 abccba Khơng phải: abcdea

2 Quan sát chương trình, suy nghĩ phân tích để hiểu chương trình

- Kiểm tra xâu có phải Palidrom hay khơng?

- In ra: ‘xau la palidrom’

‘Xau khong la palidrom’ - Quan sát giáo viên thực chương trình, nhập liệu kết chương trình

3 Chú ý theo dõi yêu cầu giáo viên, 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 giáo viên

(65)

2 Hoạt động 2: Rèn luyện kĩ lập trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Giới thiệu đề

- Chiếu nội dung đề lên bảng Nêu mục đích tốn

- Chia lớp làm hai 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 trả lời câu hỏi phân tích nhóm

- Bổ sung sửa sai cho nhóm nhóm

2 Yêu cầu học sinh độc lập viết chương trình hồn chỉnh theo thuật toán phát

- Yêu cầu số học sinh lập trình xong sớm tìm số test

- Yêu cầu học sinh nhập liệu vào theo test giáo viên chọn thông báo kết sau thực chương trình

- Xác nhận kết học sinh sửa sai cho em có kết sai

1 Quan sát đề xác định cơng việc cần thực

Nhóm 1:

- Hỏi: Dữ liệu vào, liệu toán?

- Nêu nhiệm vụ cần thực giải toán

- Hỏi: 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

- TT: 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()

2 Độc lập soạn chương trình vào máy

- Tìm test

- Nhập liệu giáo viên thực chương trình để xem kết - Thông báo kết cho giáo viên

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

(66)

2 Câu hỏi tập nhà

- Chuẩn bị nội dung cho tiết lý thuyết tiếp theo: Đọc trước nội dung kiểu ghi, sách giáo khoa, trang 74

KIỂU BẢN GHI I MỤC TIÊU

1 Kiến thức

- Biết khái niệm kiểu ghi

- Phân biệt giống khác kiểu ghi với kiểu mảng chiều

2 Kĩ năng

- Khai báo kiểu ghi, khai báo biến kiểu ghi ngôn ngữ lập trình Pascal

- Nhập xuất liệu cho biến ghi - Tham chiếu đến trường kiểu ghi

- Sử dụng kiểu ghi để giải số tập đơn giản II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính, máy chiếu projector để giới thiệu ví dụ

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: Giới thiệu kiểu ghi Tạo kiểu ghi ngôn ngữ lập trình Pascal

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu kiểu ghi

- Chiếu bảng kết thi tốt nghiệp, sách giáo khoa trang 74

- Hỏi: Trên bảng có thơng tin gì? - Hỏi: Bảng chứa thông tin đối tượng?

- Yêu cầu: Học sinh tìm thêm ví dụ tương tự

1 Quan sát ví dụ giáo viên trả lời câu hỏi

- Họ tên, ngày sinh, giới tính, điểm mơn thi,

(67)

- Diễn giải: Mỗi thông tin đối gọi thuộc tính hay trường Mỗi đối tượng mô tả nhiều thông tin hàng gọi ghi - Diễn giải: Để mô tả đối tượng vậy, ngôn ngữ lập trình cho phép ta xác định kiểu ghi Mỗi đối tượng mô tả ghi

2 Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết cách khai báo kiểu ghi, khai báo biến kiểu ghi ngôn ngữ lập trình Pascal

- u cầu: Tìm ví dụ để minh hoạ

- Để giải toán mục ta phải khai báo mảng ghi Hãy tạo kiểu mảng

- Yêu cầu học sinh phân biệt giống khác kiểu ghi kiểu mảng chiều

2 Tham khảo sách giáo khoa để nắm cấu trúc chung khai báo kiểu ghi, khai báo biến ghi

- Ví dụ:

Type kieu_nguoi=record hoten:string;

diachi:string; sdt:longint; end;

Var nguoi:kieu_nguoi;

- Độc lập suy nghĩ để tạo kiểu ghi mảng ghi

Type kieu_hs=record Hoten, ngaysinh:String; Toan, van:byte;

dtb:real; End;

Kieu_mbg=array[1 50] of kieu_hs; - Giống nhau: ghép nhiều phần tử

- Khác nhau: Mảng chiều ghép nhiều phần tử có kiểu liệu Trong ghi ghép nhiều phần tử có kiểu liệu khác

2 Hoạt động 2: Tìm hiểu cách sử dụng kiểu ghi ngôn ngữ

Pascal.

(68)

1 Giới thiệu cấu trúc chung để tham chiếu đến trường biến ghi

Tên_biến_bg.Tên_trường

- u cầu: Tìm ví dụ tham chiếu đến trường biến ghi khai báo

2 Giới thiệu cách gán giá trị cho biến ghi

+ Gán nguyên biến ghi (1) + Gán trường (2)

- Yêu cầu: Lấy ví dụ minh hoạ cho trường hợp

- Hỏi: Trường hợp (1) thực điều kiện nào?

3 Nhập/xuất giá trị cho biến ghi - Diễn giải: Ta phải viết lệnh nhập xuất giá trị cho trường

- Yêu cầu học sinh: Viết lệnh nhập giá trị cho ba trường biến ghi nguoi khai báo

- Yêu cầu học sinh: Viết lệnh in giá trị trường hoten biến ghi nguoi

1 Quan sát cấu trúc chung tham chiếu đến trường biến ghi

- Ví dụ:

nguoi.hoten nguoi.diachi nguoi.sdt;

2 Quan sát hai cách gán giá trị cho biến ghi để tìm ví dụ cụ thể

A := B;

A.ht := B.ht; A.dtb := B.dtb;

- Hai biến A, B phải khai báo kiểu ghi

3 Chú ý theo dõi dẫn dắt giáo viên để tìm ví dụ

- Readln(nguoi.hoten); - Readln(nguoi.diachi); - Readln(nguoi.sdt); - Writeln(nguoi.hoten);

3 Hoạt động 3: Rèn luyện kĩ lập trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Chiếu nội dung đề lên bảng

- Hỏi: Sử dụng kiểu liệu để giải tốn?

- u cầu học sinh: Mơ tả thông tin học sinh kiểu ghi Tạo mảng ghi

- Nêu bước để giải toán

1 Quan sát đề, ý phân tích để trả lời câu hỏi

- Một mảng ghi Type Kieu_hs=record hoten:string; toan,van,tong:byte; xeploai:char; end;

(69)

này

2 Chia lớp thành ba nhóm u cầu viết chương trình lên bìa - Thu phiếu học tập Chiếu kết lên bảng Gọi học sinh nhóm khác nhận xét đánh giá

3 Chiếu chương trình mẫu để xác hóa lại cho học sinh

biến

+ Bước 2: Nhập liệu cho mảng ghi

+ Tính tổng điểm tốn điểm văn + Dựa vào tổng điểm để xếp loại

2 Thảo luận theo nhóm để hồn thành chương trình

- Thơng báo kết

- Nhận xét, đánh giá bổ sung sai sót nhóm khác

3 Quan sát ghi nhớ IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Cách tạo kiểu ghi, khai báo biến kiểu ghi - Tham chiếu đến trường biến ghi - Nhập/xuất giá trị cho biến ghi

2 Câu hỏi tập nhà

- Bài tập: Viết chương trình giải tốn quản lý sau:

Nhập họ tên, điểm toán (Toan), điểm lý (Ly) 30 học sinh lớp In hình họ tên, điểm trung bình (DTB) 30 học sinh với DTB = (TOAN+LY)/2

- Xem nội dung phụ lục B, sách giáo khoa, trang 134: Câu lệnh With CHƯƠNG TỆP VÀ THAO TÁC VỚI TỆP

KIỂU DỮ LIỆU TỆP THAO TÁC VỚI TỆP I MỤC TIÊU

1 Kiến thức:

- Biết đặc điểm kiểu liệu tệp

- Biết khái niệm tệp có cấu trúc tệp văn

2 Kĩ năng:

- Khai báo biến kiểu tệp

- Thực thao tác xử lý tệp: Gán tên tệp, mở/đóng tệp, đọc/ghi tệp - Sử dụng thủ tục liên quan để đọc/ghi liệu tệp

(70)

- Thấy cần thiết tiện lợi kiểu liệu tệp - Có ý thức lưu trữ liệu cách khoa học

- Giáo dục thêm ý thức tôn trọng quyền, không sử chữa, chép phần mềm chưa mua quyền

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính, máy chiếu projector để giới thiệu ví dụ

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 đặc điểm kiểu liệu tệp Phân loại kiểu tệp HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH - Hỏi: Em cho biết liệu

kiểu liệu từ trước đến ta sử dụng lưu trữ loại nhớ thực chương trình?

- Hỏi: Vì em biết điều đó?

- Diễn giải: Để lưu giữ liệu, ta phải lưu nhớ ngồi thơng qua kiểu liệu tệp Mọi ngơn ngữ lập trình có thao tác: khai báo biến tệp, mở tệp, đọc/ghi liệu, đóng tệp

- Yêu cầu học sinh nghiên cứu sách giáo khoa cho biết đặc điểm kiểu tệp? Có loại kiểu tệp?

- Yeu cầu học sinh trình bày khái niệm tệp có cấu trúc tệp văn

- Bộ nhớ RAM

- Mất liệu điện

- Không thông tin tắt máy - Dung lượng liệu lưu trữ lớn - Có hai loại kiểu tệp: tệp có cấu trúc tệp văn

+ Tệp có cấu trúc loại tệp mà thành phần tổ chức theo cấu trúc định

+ Tệp văn bản: tệp mà liệu ghi dạng kí tự theo mã ASCII

2 Hoạt động 2: Tìm hiểu thao tác xử lý tệp văn ngôn ngữ lập trình Pascal.

(71)

1 Giới thiệu cấu trúc chung khai báo biến tệp

Var <tên_biến_tệp>: Text;

- u cầu học sinh tìm ví dụ cụ thể:

2 Giới thiệu thao tác gán tên tệp, tạo tệp để ghi, mở tệp để đọc, đó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>); Close(<tên_biến_tệp>);

- Yêu cầu: lấy ví dụ minh họa mở tệp để ghi thông tin mở tệp để đọc thông tin

3 Chiếu sơ đồ làm việc với tệp lên bảng, hình 16, trang 86, sách giáo khoa Yêu cầu học sinh giải thích ý nghĩa sơ đồ

4 Giới thiệu cấu trúc chung thủ tục đọc/ghi liệu tệp văn

- Yêu cầu học sinh lấy ví dụ minh họa

1 Quan sát cấu trúc suy nghĩ trả lời

- Var f,g:text;

2 Quan sát suy nghĩ để trả lời câu hỏi

Assign(f5, ‘B1.INP’); Rewrite(f5);

Close(f5);

Assign(f5, ‘B1.OUT’); Reset(f5);

Close(f5);

3 Quan sát sơ đồ suy nghĩ để trả lời - 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

4 Quan sát cấu trúc chung

- Readln(f,x1,x2); Đọc liệu từ biến tệp f, đặt giá trị vào hai biến x1 x2 - Writeln(g, ‘Tong la ’, x1+x2); Ghi vào biến tệp g hai tham số; dòng chữ ‘Tong la ’ giá trị tổng x1+x2

IV ĐÁNH GIÁ CUỐI BÀI

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 chương thông qua ví dụ

(72)

- Sử dụng hàm thủ tục liên quan để giải tập II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy chiếu projector để giới thiệu ví dụ, phịng máy vi tí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: Ôn tập kiến thức lý thuyết.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Gợi ý để học sinh nhớ lại kiến

thức học kiểu tệp

- Hỏi: Cách khai báo biến kiểu tệp? - Hỏi: Có thủ tục làm việc với tệp?

- Hỏi: Hàm thủ tục liên quan xử lý tệp?

2 Giới thiệu bảng tổng hợp hàm thủ tục lên bảng, xem tổng kết kiến thức liên quan

1 Theo dõi dẫn dắt giáo viên trả lời - Var <tên_biến_tệp>: Text;

- 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>); - Close(<tên_biến_tệp>);

- Read/Readln(<tên_biến_tệp>,

<Danh_sách_tên_biến>); - Write/Writeln(<tên_biến_tệp>,

<Danh_sách_kết_quả>); - Eof(<tên_biến_tệp>)

- Seek(<tên_biến_tệp>,<biến_nguyên>);

2 Quan sát bảng tổng hợp ghi nhớ

2 Hoạt động 2: Tìm hiểu chương trình ví dụ.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu ví dụ

- Giới thiệu nội dung đề

- Chiếu chương trình ví dụ lên bảng gợi ý để học sinh tìm hiểu chương trình

- Hỏi: Hàm Eof(f) có chức gì?

1 Theo dõi quan sát đề chương trình gợi ý

(73)

- Có thể sử dụng cấu trúc For thay cho While khơng?

- Chương trình thực cơng việc gì?

- Thực chương trình để học sinh thấy kết

2 Tìm hiểu chương trình ví dụ - Giới thiệu đề

- Chiếu tranh mô kết nối điện trở, hình 17, trang 88, sách giáo khoa

- Hỏi: Cơng thức tính điện trở sơ đồ II, III, IV

- Chiếu chương trình ví dụ lên bảng - Hỏi: Mảng a dùng để lưu giữ giá trị nào?

- Cho file liệu vào gồm dòng Yêu cầu học sinh tính kết - Thực chương trình đọc file liệu vào để học sinh đối chiếu kết

- Khơng Vì khơng biết số lượng phần tử tệp

- Tính đưa hình khoảng cách từ trại thầy hiệu trưởng đến trại giáo viên

2 Quan sát nội dung đề bài, quan sát tranh mô kết nối điện trở yêu cầu

- Dùng để lưu giữ điện trở tương đương điện trở theo cách ghép nối sơ đồ

- Tính kết điện trở tương đương - Quan sát kết chương trình so sánh với kết tính đương

- Nhận xét tính xác thời gian thực chương trình

3 Hoạt động 3: Rèn luyện kĩ lập trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Chiếu đề lên bảng Yêu cầu học

sinh tự viết chương trình, chạy thử báo cáo kết

2 Quan sát, theo dõi việc lập trình học sinh, gợi ý cho số em cịn yếu

3 Yêu cầu học sinh thực chương trình với test giáo viên

1 Theo dõi đề bài, định hướng liệu vào, thuật tốn

2 Soạn chương trình vào máy, thực chương trình thơng báo kết cho giáo viên

(74)

chuẩn bị Thông báo kết mà chương trình tìm Xác nhận kết

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Các thao tác xử lý tệp: + Gán tên tệp

+ Mở tệp + Tạo tệp

+ Đọc/ghi thông tin tệp + Đóng tệp

- Hàm thủ tục liên quan

+ Hàm EOF(tên_biến_tệp)

2 Câu hỏi tập nhà

(75)

CHƯƠNG VI CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CĨ CẤU TRÚC

BµI 17: CHƯƠNGTRÌNH CON VÀ PHÂN LOẠI

(TiÕt 37) I MỤC TIÊU

1 Kiến thức:

- Biết khái niệm chương trình

- Biết ý nghĩa chương trình con, cần thiết phải viết chương trình thành chương trình

- Biết cấu trúc chương trình

- Phân biệt hai loại chương trình hàm thủ tục

2 Kĩ năng:

- Nhận biết thành phần đầu thủ tục

- Nhận biết hai loại tham số hình thức đầu thủ tục

- Biết cách khai báo hai loại chương trình với tham số hình thức chúng

- Biết cách viết lời gọi chương trình thân chương trình II SỰ CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1 Chuẩn bị giáo viên

- SGK, Giáo án, phòng máy chiếu

2 Chuẩn bị học sinh

(76)

III HOẠT ĐỘNG DẠY VÀ HỌC ổn định tổ chức

kiểm tra sĩ số (2’) Kiểm tra cũ: khơng

1 Hoạt động 1: Tìm hiểu chương trình ích lợi việc sử dụng chương trình lập trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu ý nghĩa khái niệm

chương trình

- Chiếu hai chương trình giáo viên chuẩn bị sẵn Một chương trình có sử dụng chương trình con, chương trình khơng sử dụng chương trình

Chẳng hạn: Chương trình tính tổng lũy thừa: TLT=an + bm + cp + dq.

- Gọi học sinh nhận xét tính ngắn gọn, rõ ràng, tính dễ đọc dễ hiểu hai chương trình

- Hỏi: Khi nên viết chương trình con?

- Yêu cầu học sinh đọc sách giáo khoa, cho biết khái niệm chương trình - Chia lớp làm ba nhóm Phát bìa cho nhóm Yêu cầu học sinh điền lợi ích việc sử dụng chương trình

1 Quan sát đề hai chương trình ví dụ

- Nhận xét: Chương trình có sử dụng chương trình viết ngắn gọn, dễ hiểu chương trình viết khơng sử dụng chương trình

- Đối với toán lớn, cần nhiều người viết Chương trình dài, cần chia làm nhiều đoạn Có nhiều đoạn lệnh lặp lại, nên viết chương trình

- Tham khảo sách giáo khoa để trả lời - Nghiên cứu sách giáo khoa, thảo luận để điền phiếu học tập

+ Tránh việc phải viết lặp lặp lại dãy lệnh chương trình

+ Hỗ trợ việc thực viết chương trình lớn

+ Phục vụ q trình trừu tượng hóa + Mở rộng khả ngôn ngữ

(77)

-Thu phiếu học tập Chiếu kết lên bảng

- Bổ sung giải thích thêm số lợi ích mà học sinh điền chưa đầy đủ (vì em cịn mơ hồ chương trình con)

2 Phân loại chương trình

- Hỏi: Có loại chương trình con? Gọi tên chúng?

- Hỏi: Đã làm quen với hàm thủ tục chưa? Lấy số ví dụ hàm thủ tục học

- Ý nghĩa hàm thủ tục chuẩn?

- Yêu cầu học sinh tham khảo sách giáo khoa để phân biệt khái niệm hàm thủ tục

3 Cấu trúc chương trình

- Giới thiệu cấu trúc chung chương trình

<Phần đầu> [<Phần khai báo>] <Phần thân>

- Yêu cầu học sinh so sánh với cấu trúc chương trình

- u cầu học sinh giải thích phần khai báo phần thân chương trình

- Diễn giải: Phần đầu chương trình gồm có tên chương trình con,

cấp chương trình - Báo cáo kết

- Theo dõi bổ sung giải thích giáo viên

4 Tham khảo sách giáo khoa trả lời - Hai loại chương trình con: hàm thủ tục

- Đã sử dụng hàm thủ tục chuẩn - Ví dụ: Hàm abs(), length(st) Thủ tục Delete(st,p,n);

- Hàm thực số thao tác trả giá trị kiểu đơn giản thông qua tên hàm

- Thủ tục thực thực tháo tác định không trả giá trị qua tên

3 Quan sát cấu trúc chương trình

- Giống cấu trúc chương trình Khác chỗ phần đầu chương trình bắt buộc phải có

- Phân khai báo thường khai báo biến,

(78)

tham số chương trình Các tham số gọi tham số hình thức Thực chương trình

- Hỏi: Để sử dụng hàm thủ tục chuẩn em thường viết đâu viết nào?

- Diễn giải: Để gọi chương trình con, ta cần phải có lệnh gọi tương tự lệnh gọi hàm hay thủ tục chuẩn, bao gồm tên chương trình với tham số (nếu có) biến chứa liệu vào/ra tương ứng với tham số hình thức đặt cặp ngoặc Các biến gọi tham số thực

4 Suy nghĩ trả lời

- Viết chương trình Viết thủ tục kèm tham số kết thúc dấu chẩm phẩy (;) Viết hàm lệnh thủ tục Hàm khơng viết lệnh

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Chương trình đóng vai trị quan trọng lập trình, đặc biệt lập trình cấu trúc

- Các lợi ích chương trình con: Dùng chương trình thuận lợi cho việc tổ chức, viết, kiểm tra sử dụng lại chương trình

- Có hai loại chương trình

- Cấu trúc chương trình vị trí chương trình chính: Chương trình viết phần khai báo Chương trình có phần đầu, phần khai báo phần thân

- Chương trình có tham số hình thức khai báo thay tham số thực gọi chương trình

- Chương trình gọi tên

2 Câu hỏi tập nhà

- Đọc trước nội dung bài: Ví dụ cách viết sử dụng chương trình con, sách giáo khoa, trang 96

(79)

I MỤC TIÊU

1 Kiến thức:

- Biết cấu trúc chung vị trí thủ tục chương trình - Phân biệt tham số giá trị tham số biến

- Nắm khái niệm biến toàn cục biến cục

2 Kĩ năng:

- Nhận biết thành phần đầu thủ tục

- Nhận biết hai loại tham số hình thức đầu thủ tục

- Biết cách khai báo hai loại chương trình với tham số hình thức chúng

- Sử dụng lời gọi chương trình thân chương trình - Phân biệt khác hàm thủ tục

- Phân biệt sử dụng biến toàn cục biến cục

3 Thái độ:

- Rèn luyện phẩm chất người lập trình tinh thần hợp tác, làm việc theo nhóm, tuân thủ yêu cầu cơng việc chung

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- Máy vi tính máy chiếu projector để giới thiệu ví dụ

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 cấu trúc chung vị trí thủ tục chương trình chính.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Giới thiệu ví dụ mở đầu

- Chiếu chương trình ví dụ lên bảng (Ví dụ VD-thutuc1, trang 96) Giới thiệu cho học sinh cấu trúc thủ tục vị trí khai báo thủ tục, lời gọi thủ tục

2 Tìm hiểu cấu trúc thủ tục

- Hỏi: Vị trí thủ tục nằm phần

1 Quan sát, theo dõi ví dụ

(80)

trong chương trình chính?

- Hỏi: Cấu trúc thủ tục gồm phần? - Hỏi: Phân biệt giống khác chương trình chương trình chính?

- Giới thiệuc cấu trúc chung thủ tục Procedure tên_thủ_tục(danh sách tham số);

Các khai báo thủ tục; Begin

Các lệnh thủ tục; End;

- Lời gọi thủ tục ta viết phần chương trình?

3 Tìm hiểu tham số hình thức tham số thực

- Chiếu ví dụ 2, VD_thutuc2, sách giáo khoa trang 98

- Yêu cầu học sinh nhận xét thủ tục ve_hcn ví dụ với ví dụ trước - Diễn giải: Khai báo cho phép thủ tục ve_hcn thực vẽ nhiều hình chữ nhật có kích thước khác

- Hỏi: Quan sát chương trình cho biết, chương trình ta vẽ tất bao nhêu hình chữ nhật

- Tham số chdai, chrong gọi tham số hình thức

- Trong lời gọi thủ tục tham số hình thức thay tham số thực - So sánh tham số lời gọi ve_hcn(5,10); ve_hcn(a,b);

4 Tìm hiểu tham số giá trị tham số biến

- Diễn giải: Tham số có hai chức năng: đưa

báo biến

- Ba phần: Tên thủ tục, khai báo thủ tục phần thân thủ tục

- Giống: Cấu trúc chung

- Khác: Trong phần tên: Từ khóa đặt tên Procedurre, có tham số

- Quan sát ghi nhớ cấu trúc chung

Trong phần thân kết thúc End;

- Trong phần thân chương trình

3 Quan sát ví dụ bảng

- Thủ tục ve_hcn ví dụ có tham số chdai, chrong

- Vẽ hình chữ nhật

- Tham số thực thủ tục ve_hcn(5,10); số thủ tục ve_hcn(a,b); biến

(81)

dữ liệu vào cho chương trình đưa liệu chương trình tìm - Hỏi: Các tham số ví dụ thuộc loại nào?

- Chiếu chương trình VD_thambien1, sách giáo khoa trang 99

- Hỏi: Các tham số x,y thuộc loại nào? - Diễn giải: Trong lời gọi thủ tục, tham số hình thức thay tham số thực tương ứng tên biến chứa dữ liệu ra gọi tham số biến - Hỏi: x, y tham số giá trị hay tham số biến?

- Hỏi: Có nhận xét khai báo tham số hình thức tham trị tham biến?

- Chiếu vd_thambien2 giải thích để học sinh thấy khác biệt tham số giá trị tham số biến

- Đưa liệu vào cho chương trình xử lý

- Đưa liệu sau chương trình xử lý ngồi

- Là tham số biến

- Khi khai báo tham số biến ta đặt từ khóa var trước tham số

2.Hoạt động 2: Tìm hiểu cấu trúc chung vị trí hàm chương

trình chính.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Nhắc lại kiến thức cũ hàm

chuẩn

- Hỏi: Hãy kể tên số hàm chuẩn học cách sử dụng chúng

2 Giới thiệu cấu trúc chung vị trí hàm chương trình - Hỏi: So sánh giống khác hàm thủ tục

1 Suy nghĩ trả lời

- Hàm ABS(), SQRT(), ROUND() - Viết tên hàm cần gọi tham số - Lời gọi hàm viết biểu thức tốn hạng, chí tham số hàm khác

2 Quan sát cấu trúc chung

- Giống: Có cấu trúc tương tự, có tham số

(82)

3 Tìm hiểu hàm thơng qua ví dụ - Chiếu chương trình ví dụ rutgon_phanso, sách giáo khoa trang 101

- Hỏi: Trong chương trình có hàm

- Hàm UCLN(x,y) dùng để làm gì? - Hỏi: Lời gọi hàm đâu?

- Hỏi: Có khác với thủ tục lời gọi hàm

- Chiếu chương trình ví dụ 2, Minbaso, sách giáo khoa, trang 102 - Hỏi: Trong chương trình có hàm? chức hàm? - Có lời gọi hàm chương trình chính?

4 Tìm hiểu biến cục biến toàn

- Chiếu chương trình ví du 2: Rutgon_phanso lên bảng

- Hỏi: Có biến sử dụng chương trình? Các biến khai báo chỗ chương trình?

- Diễn giải: Biến tuso, mauso, A có ảnh hưởng tồn chương trình Biến Sodu ảnh hưởng thân chương trình

- Yêu cầu học sinh: Phân biệt giống khác biến toàn biến cục

Bắt đầu hàm từ Function Quan sát ví dụ trả lời

- Một hàm UCLN, dùng để tìm ước số chung lớn hai số X, Y

- Lệnh A:=UCLN(tuso,mauso);

- Lời gọi hàm phải đặt lệnh lời gọi chương trình khác

- Quan sát chương trình ví dụ - Có hàm khai báo - Hàm sử dụng hai lần

- Kết hàm lại đầu vào cho hàm lần gọi thứ hai

4 Quan sát lại ví dụ

- Quan sát chương trình giáo viên - Có biến: tuso, mauso, A, sodu

- Các biến: tuso, mauso, A khai báo chương trình

- Các biến: sodu khai báo chương trình

- Biến cục bộ: có ảnh hưởng chương trình con, khai báo phần khai báo chương trình

(83)

phần khai báo chương trình IV ĐÁNH GIÁ CUỐI BÀI

BÀI THỰC HÀNH SỐ 6 I MỤC TIÊU

1 Kiến thức:

- Củng cố lại kiến thức xâu ký tự, chương trình

2 Kĩ năng:

- Rèn luyện kĩ xử lý xâu việc tạo hiệu ứng chữ chạy hình - Nâng cao kĩ viết sử dụng chương trì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 để học sinh có kĩ 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)

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu hai thủ tục catdan(s1,s2)

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 ví dụ minh họa

- Chiếu nội dung thủ tục: cangiua(s); - Hỏi: Đầu vào thủ tục?

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

(84)

- Hỏi: 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 khơng có hiệu lực lệnh đưa s hình khơng nằm thủ tục Tìm hiểu chương trình câu b, sách giáo khoa, trang 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 thủ tục chuẩn: gotoxy(x,y); delay(n); keypressed;

- Thực chương trình để giúp học sinh thấy kết chương trình

- Thủ tục thực thêm vào trước xâu s số ký tự trắng để đưa s hình ký tự S ban đầu 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

- Yêu cầu người sử dụng nhập xâu ký tự Đưa xâu hình có dạng dịng chữ chạy hình văn 25*80

- Quan sát hình để đối chiếu với kết mà học sinh tự suy luận tính

2 Hoạt động 2: Rèn luyện kĩ lập trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH 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 đề tập

- 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 quat lập trình học sinh

1 Quan sát yêu cầu bảng

- Về bản, giống 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, 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ủ tục

- Độc lập viết chương trình vào máy báo cáo kết thử nghiệm

(85)

IV ĐÁNH GIÁ CUỐI BÀI

Câu hỏi tập nhà

- Viết thủ tục chaychu(s,dong) nhận tham số xâu S gồm không 79 ký tự biến nguyên 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 dụng thực hành số 7, sách giáo khoa, trang 105

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 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 để học sinh có kĩ 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 hàm, thủ tục chương trình thực hiện việc liên quan đến tam giác

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH Tìm hiểu việc xây dựng hàm thủ tục

- Chiếu khai báo kiểu liệu diem tamgiac Chiếu hàm thủ tục lên bảng

- Hỏi: Chức chương trình con?

1 Quan sát chương trình con, lệnh khai báo tham số

- Chức chương trình con: daicanh(); tính độ dài ba cạnh a, b, c tam giác r

(86)

- Có tham số nào? Tham số dạng tham số biến tham số dạng tham số giá trị

2 Tìm hiểu chương trình câu b, sách giáo khoa trang 106

- Chiếu chương trình câu b

- Hỏi: Chương trình thực cơng việc gì?

- Thực chương trình để giúp học sinh thấy kết

- Thay tham biến thành tham trị để học sinh thấy sai khác

tam giác r

dientich():real; Cho giá trị diện tích tam giác r

tinhchat(); khẳng định tính chất tam giác: đều, cân vuông

hienthi(); hiển thị tọa độ ba đỉnh tam giác hình

Kh_cách():real; cho giá trị khoảng cách hai điểm

- Tham số biến r, a, b, c - Tham số giá trị p,q

2 Quan sát chương trình, dự tính chức chương trình

- Nhập vào tọa độ ba đỉnh tam giác khảo sát tính chất tam giác: cân, vng, In chu vi diện tích tam giác

- 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 trị tham biến

2 Hoạt động 2: Rèn luyện kĩ lập trình.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH 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 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 - Giáo viên góp ý bổ sung cho câu hỏi phân tích trả lời phân tích

1 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ỗ chương trình câu b

+ Thuật tốn để đếm số lượng loại hình tam giác

(87)

2 Lập trình

- Yêu cầu học sinh lập trình máy Giáo viên tiếp cận học sinh để sửa lỗi cần thiết

- Yêu cầu học sinh nhập liệu vào giáo viên báo cáo kết chương trình

- Đánh giá kết học sinh

liệu tệp

+ Ba số nguyên dương số lượng ba loại hình tam giác Ba số ghi ba 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.INP Thay đoạn chương trình in kết hình chương trình để in ba số nguyên dương số lượng ba loại hình tệp TAMGIAC.OUT

+ Thuật tốn: Nếu deu d:=d+1

Ngược lại can c:=c+1 ngược lại v:=v+1;

2 Độ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 giáo viên - Nhập liệu giáo viên báo cáo kết

IV ĐÁNH GIÁ CUỐI BÀI

1 Những nội dung học

- Cách xây dựng hàm thủ tục, cách khai báo tham số dạng tham biến tham trị

- Tìm hiểu số chương trình liên quan đến tam giác

2 Câu hỏi tập nhà

- Cho file liệu tập hoạt động

(88)

Ngày soạn: 04/04/2010 Ngày giảng: 06/04/2010

Người duyệt:

BÀI 19: THƯ VIỆN CHƯƠNG TRÌNH CON CHUẨN (Tiết 48)

I MỤC TIÊU

1 Kiến thức:

- Biết số thư viện chương trình

2 Kĩ năng:

- Bước đầu sử dụng thư viện lập trình - Khởi động chế độ đồ hoạ

- Sử dụng thủ tục vẽ điểm, đường, hình trịn, hình ellipse, hình chữ nhật

II ĐỒ DÙNG DẠY HỌC

1 Chuẩn bị giáo viên

- SGK, Giáo án, Máy chiếu,

2 Chuẩn bị học sinh

- SGK, ghi

III HOẠT ĐỘNG DẠY-HỌC - Ổn định tổ chức:

- Kiểm tra sĩ số: (1’) - Kiểm tra cũ: không

1 Hoạt động (12’):Tìm hiểu thư viện CRT

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH 1 Tìm hiểu thủ tục Clrscr.

- Yêu cầu học sinh nghiên cứu sách giáo khoa, kể tên chương trình thư viện CRT

- Chiếu chương trình sau:

1 Tham khảo sách giáo khoa:

- Clrscr, textcolor, textbackground, gotoxy

(89)

Begin clrscr; Readln; End

- Biên dịch chương trình Hỏi: Tại xuất lỗi? Khắc phục nào?

- Thêm Uses CRT; vào đầu chương trình thực chương trình để học sinh thấy kết Chú ý cho học sinh ghi nhớ hình trước lúc thực chương trình - Hỏi: Chức thủ tục Clrscr; 2 Tìm hiểu thủ tục textcolor. - Chiếu chương trình ví dụ: Uses CRT;

Begin

Write(‘Chua dat mau chu’); textcolor(4);

Write(‘Da dat mau chu la do’); Readln;

End

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức lệnh textcolor(4); 3 Tìm hiểu thủ tục Textbackground. - Chiếu chương trình ví dụ:

Uses CRT; Begin

Textbackground(1);

Writeln(‘Da dat lai mau nen’); Readln;

End

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức lệnh textbackground(1); 4 Tìm hiểu thủ tục gotoxy.

- Vì sử dụng thủ tục chưa sử dụng thư viện CRT

- Thêm lệnh USES CRT;

- Quan sát giáo viên thực chương trình

- Xóa hình

- Quan sát chương trình

- Quan sát kết chương trình - Đặt màu chữ thành màu đỏ

- Quan sát chương trình

- Quan sát kết chương trình

(90)

- Chiếu chương trình ví dụ: Uses CRT;

Begin

Writeln(‘Con tro dang dung o cot 10 dong 20’);

Gotoxy(10,20); Readln;

End

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức lệnh gotoxy(10,20);

- Quan sát chương trình

- Quan sát kết chương trình - Đưa trỏ vị trí cột 10 dịng 20 2 Hoạt động (5’):Tìm hiểu thư viện Graph ngơn ngữ lập trình Pascal

3 Hoạt động (15’): Tìm hiểu thủ tục vẽ điểm, đường hình bản.

(91)

- Chiếu cấu trúc chung thủ tục: Putpixel(x,y:integer;color:word); - Chiếu chương trình ví dụ

Use graph Begin drive:=0;

initgraph(drive, mode, ‘c:\Tp\BGI’); Putpixel(12,40,15);

readln; End

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức thủ tục Putpixel 2 Tìm hiểu thủ tục Line

- Chiếu cấu trúc chung thủ tục: Line(x1,y1,x2,y2:integer);

- Chiếu chương trình ví dụ thay lệnh Putpixel(12,40,15); lệnh line(1,1,20,20);

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức thủ tục Line 3 Tìm hiểu thủ tục Lineto

- Chiếu cấu trúc chung thủ tục: Lineto(x,y:integer);

- Chiếu chương trình ví dụ thay lệnh Putpixel(12,40,15); lệnh lineto(20,20);

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức thủ tục Lineto

4 Tìm hiểu thủ tục Circle, Ellipse, Rectangle.

để trả lời câu hỏi

- Quan sát chương trình

- Quan sát kết chương trình - Vẽ điểm có màu Color hình tọa độ (x,y)

2 Quan sát cấu trúc chung suy nghĩ để trả lời câu hỏi

- Quan sát chương trình

- Quan sát kết chương trình - Vẽ đoạn thẳng từ điểm có tọa độ (x1,y1) đến điểm có tọa độ (x2,y2) Quan sát cấu trúc chung suy nghĩ để trả lời câu hỏi

- Quan sát chương trình

- Quan sát kết chương trình - Vẽ đoạn thẳng từ điểm đến điểm có tọa độ (x,y)

(92)

- Chiếu cấu trúc chung thủ tục: Circle(x,y:integer; r:word);

Ellipse(x,y:integer;stangle,endangle,xr,yr: word);

Rectangle(x1,y1,x2,y2:integer); - Chiếu chương trình ví dụ Use graph

Begin drive:=0;

initgraph(drive, mode, ‘c:\Tp\BGI’); Circle(12,40,30);

Ellipse(50,50,30,120,50,100:word); Rectangle(100,100,200,200); readln;

End

- Thực chương trình để học sinh thấy kết

- Hỏi: Chức thủ tục Circle, Ellipse, Rectangle

5 Tìm hiểu thủ tục Setcolor

- Chiếu cấu trúc chung thủ tục: Setcolor(m:word);

- Chiếu chương trình ví dụ Use graph

Begin drive:=0;

initgraph(drive, mode, ‘c:\Tp\BGI’); Circle(12,40,100);

Setcolor(4); Circle(12,40,200); readln;

End

- Thực chương trình để học sinh thấy kết

- Quan sát chương trình

- Quan sát kết chương trình + Circle: Vẽ đường trịn có tâm (x,y) bán kính r

+ Ellipse: Vẽ cung ellipse có tâm điểm x,y với bán kính trục xr, yr, từ góc khởi đầu stangle đến góc kết thúc endangle

6 Quan sát cấu trúc chung suy nghĩ để trả lời câu hỏi

- Quan sát chương trình

(93)

- Hỏi: Chức thủ tục Lineto

4 Hoạt động (5’) : Tìm hiểu số thư viện khác

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH 1 Yêu cầu học sinh nghiên cứu sách giáo

khoa, nêu tên thư viện

2 Yêu cầu học sinh nêu chức của thư viện

1 Các thư viện: System, Dos, Printer Chức thư viện:

- System: chứa hàm thủ tục vào/ra sơ cấp

- Dos: chứa thủ tục tạo thư mục, đóng mở file

- Printer: chứa thủ tục liên quan máy in

5 Hoạt động (5’): Sử dụng thư viện.

HOẠT ĐỘNG CỦA GIÁO VIÊN HOẠT ĐỘNG CỦA HỌC SINH 1 Giới thiệu nội dung yêu cầu

Định hướng cách giải vấn đề cho học sinh

- Thủ tục để vẽ hình trịn có tâm điểm hình

- Cần lệnh vậy, dùng cấu trúc để điều khiển

1 Quan sát yêu cầu giáo viên

Circle(x,y:integer;r:word);

- Cần 20 lệnh, nên dùng cấu trúc For để chương trình ngắn gọn

IV CỦNG CỐ VÀ DẶN DÒ : (2’)

- Thư viện chương trình cung cấp chương trình chuẩn nhằm mở rộng khả ứng dụng

- Khởi động chế độ đồ hoạ Chuyển từ chế độ hình đồ hoạ sang chế độ hình văn

Ngày đăng: 08/03/2021, 11:39

Từ khóa liên quan

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

Tài liệu liên quan