1. Trang chủ
  2. » Giáo án - Bài giảng

giao an tin 10 ky 2 hoan chinh

83 263 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 83
Dung lượng 909,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Kĩ năng -Biết được các thành phần trong khai báo kiểu mảng một chiều; -Biết được định danh của một phần tử kiểu mảng một chiều xuất hiện trong một chương trình; -Biết cách khai báo mảng

Trang 1

Ngày soạn: 2/12/2010 Tiết PPCT: 17

- Rèn luyện kĩ năng nhận xét, phân tích một bài toán.

II CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1 Chuẩn bị của giáo viên

- Nghiên cứu, hệ thống lại kiến thức, sách giáo khoa.

2 Chuẩn bị của học sinh.

- Sách giáo khoa, một số chương trình bài 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.

a Mục tiêu:

- Học sinh nhớ lại được các kiến thức lí thuyết đã học.

b Nội dung:

- Khái niệm về lập trình và ngôn ngữ lập trình.

- Có hai loại chương trình dịch: Biên dịch và thông dịch.

- Các thành phần của ngôn ngữ lập trình: Bảng chữ cái, cú pháp và ngữ nghĩa.

- Các khái niệm: Tên, hằng và biến, chú thích.

- Cấu trúc của chương trình Pascal: Phần khai báo và phần thân.

- Các kiểu dữ liệu chuẩn: Số nguyên, số thực, kí tự, logic.

Đặt câu hỏi gợi ý để học sinh tự nhắc lại

Chú ý, theo dõi trả lời các câu hỏi.

- Lập trình là quá trình diễn đạt thuật toán bằng một ngôn ngữ lập trình.

- Biên dịch và thông dịch.

- Bảng chữ cái, cú pháp và ngữ nghĩa.

- Khái niệm tên, hằng và biến, chú thích.

- Gồm hai phần: Phần khai báo và 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ệ,

Trang 2

- Hàm bình phương, hàm căn bậc hai, hàm giá trị tuyệt đối, hàm sin, hàm cos.

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 của

- Thu phiếu học tập, treo kết quả lên

bảng Gọi học sinh của nhóm khác nhận

1 Quan sát, theo dõi đề bài và định hướng của giáo viên để xác định bài toán.

- Nhóm 1:

+ Dữ liệu vào.

+ Dữ liệu ra.

+ Các nhiệm vụ chính phải thực hiện.

- Nhóm 2:

+ Số N + Điều kiện để có số chia hết cho

Trang 3

xét đánh giá và bổ sung.

3 Chuẩn hóa kiến thức bằng chương

trình mẫu của giáo viên Thực hiện chương

trình, nhập dữ liệu để học sinh thấy kết quả

của chương trình.

- Nhận xét, đánh giá và bổ sung những thiếu sót của nhóm khác.

3 Theo dõi và ghi nhớ.

Củng cố

1 Những nội dung đã học.

- Giáo viên yêu cầu học sinh nhắc lại một số nội dung chính đã được ôn tập trong tiết học.

2 Câu hỏi và bìa tập về nhà.

- Chuẩn bị kiến thức cho tiết sau kiểm tra học kì 1: Xem lại toàn bộ các kiến thức đã được ôn tập, đặc biệt chú trọng cấu trúc lặp và rẽ nhánh kiểu mảng.

KIỂM TRA HỌC KÌ 1

1 MỤC TIÊU CẦN ĐÁNH GIÁ.

- Kiểm tra kết quả tiếp thu của học sinh từ đầu năm học đến nay.

- Đánh giá kĩ năng phân tích một bài toán và tư duy lập trình trên giấy.

- Có thái độ tự giác, tích cực trong làm bài kiểm tra.

2 MỤC ĐÍCH YÊU CẦU CỦA ĐỀ.

- Kiến thức: Học sinh nắm được các kiến thức về kiểu dữ liệu cơ bản, kiểu dữ liệu có cấu trúc Các hàm chuẩn thông dụng Cấu trúc vào/ra dữ liệu, cấu trúc rẽ nhánh và lặp.

- Kĩ năng: Có kĩ năng phân tích bài toán, viết chương trình.

3 CHUẨN BỊ.

- Giáo viên chuẩn bị đề kiểm tra.

- Học sinh chuẩn bị đầy đủ kiến thức đã được học, ôn tập.

4 NỘI DUNG ĐỀ BÀI VÀ ĐÁP ÁN.

- Cấu trúc đề: 2 câu kiểm tra hiểu lí thuyết, 1 câu lập trình, thời gian làm bài 45 phút, hình thức thi viết trên giấy.

- Nội dung đề:

Câu 1: Hãy phân biệt kĩ thuật biên dịch và thông dịch.

Câu 2: So sánh sự giống và khác nhau của cấu trúc For và While.

Cho chương trình có sử dụng cấu trúc For như sau:

Trang 4

Câu 3: Viết chương trình nhập một mảng số nguyên dương N, đếm số phần tử chia hết cho 3 hoặc 5 trong dãy số từ 1 đến N.

Bước 1: Kiểm tra tính đúng đắn của lệnh tiếp theo trong chương trình nguồn.

Bước 2: Chuyển lệnh đó thành ngôn ngữ máy.

Bước 3: thực hiện các câu lệnh vừa được chuyển đổi.

(phù hợp với môt trường đối thoại giữa người và máy)

Câu 2: (4 điểm)

- giống: For và While đều cùng là cấu trúc lặp.

- Khác : For là cấu trúc lặp có số lần đã biết trước, ngược lại while ;à cấu trúc lặp có

If (i mod 3 = 0) OR (i mod 5 = 0) then dem:=dem+1;

write(‘so luong dem duoc la’,dem);

readln;

end.

Trang 5

Ngày soạn:10/12/2010 TiếtPPCT 19

1 Chuẩn bị của giáo viên.

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

2 Chuẩn bị của học sinh.

- Sách giáo khoa, sách bài tập và bài tập đã viết ở nhà.

III Hoạt đông dạy – học

1 Ổn định lớp, sỹ số

2 Bài mới

1 Gợi ý để học sinh nêu khái niệm về bộ

số Pitago.

- Yêu cầu: lấy một ví dụ cụ thể

- Hỏi : Để kiểm tra bộ ba số a, b, c bất kì

có phải là bộ Pitago, ta pahỉ kiểm tra các

đẳng thức nào?

2 Chiếu chương trình mẫu lên bảng.

thực hiện mẫu các thao tác: lưu, thực hiện

từng lệnh chương trình, xem kết quả trung

gian, thực hiện chương tình và nhập dữ

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 hiện từng lệnh

của chương trình.

1 Theo dõi dẫn dắt cuả chọ sinh để nêu khái niệm về bộ số Pitago: Tổng bình phương của hai số bằng bình phương của

Trang 6

- Yờu cầu học sinh xem cỏc kết quả a2,

- Quan sỏt quỏ trỡnh rẽ nhỏnh của từng

bộ dữ liệu vào và trả lời.

Củng cố: Về nhà xem lại cỏc nội dung thực hành đồng thời xem trước nội dung phần

tiếp theo để hụm sau ta thực hành tiếp.

1 Chuẩn bị của giỏo viờn.

- Phũng mỏy vi tớnh, mỏy chiếu Projector để hướng dẫn.

2 Chuẩn bị của học sinh.

- Sỏch giỏo khoa, sỏch bài tập và bài tập đó viết ở nhà.

III Hoạt đụng dạy – học

1 Ổn định lớp, sỹ số

2 Bài mới

Trọng tõm: Rốn luyện kĩ năng lập trỡnh hoàn thiện một bài toỏn

1 Nêu nôi dung, mục đích, yêu cầu cảu

bài toán.

- Hỏi : Bớc đầu tiên để giải bài toán ?

- Hỏi : Để xác định ta phải đặt các câu

hỏi nh thế nào? Gọi học sinh đặt câu hỏi và

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.

2 Yêu cầu học sinh gõ chơng trình vào

máy.

- Giáo viên tiếp cận từng học sinh để

h-ớng dẫn và sửa sai.

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

1 chú ý theo dõi vấn đề đặt ra của giáo viên.

- Xác định input output và thuật giải.

- Mục đích của giải phơng trình?

+ Kết luận số nghiệm và giá trị nghiệm x.

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

Trang 7

- Nhập dữ liệu với test 1 2 -2

4 Yêu cầu học sinh xác định các testcase,

nhập dữ liệu, đối sánh kết quả.

thông báo kết quả của hcơng trình.

4 Tìm testcase.

0 0 VNV

0 3 VN

2 3 -1.5 Nhập dữ liệu và thông báo kết quả.

IV Đánh giá cuối bài.

1 Những nội dung đã học

Các bớc để hoàn thành một chơng trình.

- Phân tích bài toán để xác định dữ liệu vào, dữ liệu ra, thuật toán.

- Soan chơng trình vào máy.

- Lu dữ chơng trình.

- Biên dịch.

- Thực hiện và hiệu chỉnh chơng trình.

Trang 8

Ngày soạn: 16/12/2010 PPCT: 21

§11 KIỂU MẢNG (Tiết 1)

I Mục đích, yêu cầu

1 Kiến thức

-Biết được một kiểu dữ liệu mới là kiểu mảng một chiều

-Biết được một loại biến có chỉ số;

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

2 Kĩ năng

-Biết được các thành phần trong khai báo kiểu mảng một chiều;

-Biết được định danh của một phần tử kiểu mảng một chiều xuất hiện trong một chương trình;

-Biết cách khai báo mảng đơn giản với chỉ số miền con của kiểu nguyên;

-Biết cách tham chiếu đến các phần tử của mảng một chiều

3 Tư duy và thái độ:

Tự giác, tích cực, chủ động và sáng tạo trong tìm kiếm tri thức

IV Hoạt động dạy học

1 Hoạt động 1: Khởi động bài mới

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

1 Nêu bài toán mở đầu Y/cầu

hs đọc, tìm hiểu chương trình

giải quyết bài toán đó Và trả lời

các câu hỏi sau:

- Nhận giá trị nhiệt độcủa 7 ngày trong tuần

Cùng kiểu thực (real)

- dem: để đếm số

ngày tron tuần có nđộlớn hơn nđộ trungbình

- Để kiểm tra lần lượtcác ngày, nđộ ngàynào lớn hơn nđộ trungbình

2 Bản chất thuật toán

không có gì thay đổinhưng việc viếtchương trình gặp khókhăn do cần dùng rấtnhiều biến và đoạncác câu lệnh tính toán

Trang 9

3 Để khắc phục hạn chế trên

người ta thường ghép chung 7

biến trên thành một dãy và đặt

cho nó chung 1 tên và đánh cho

chiều và kiếu mảng hai chiều

4 Y/cầu hs tham khảo sgk và

hỏi: Em hiểu như thế nào về

tử cùng kiểu dữ liệu

Các ptử trong mảngcùng tên và phân biệtnhau bởi chỉ số

- Trả lời:

+ Kiểu của các p/tử

+ Cách đánh số cácp/tử

BÀI 11 KIỂU MẢNG 1.Kiếu mảng một chiều

a K/n mảng một chiều

Mảng một chiều là dãy hữu hạncác phận tử cùng kiểu dữ liệu.Các ptử trong mảng cùng tên vàphân biệt nhau bởi chỉ số

Để mô tả mảng một chiều, ta cần xác định:

+ Kiểu của các p/tử

+ Cách đánh số các p/tử

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

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

1 Y/cầu hs tìm hiểu phần khai

báo một lời giải khác cho bài

toán trên trong trường hợp tổng

quát (N ngày), có sử dụng mảng

1 chiều

Hỏi: Chỉ ra phần khai báo mảng

trong phần khi báo của chương

-Khái quát hoá, ta có cú pháp

khái báo biến mảng một chiều

Dòng 2 : Kbáo biến

mảng Nhietdo qua kiểu

mảngLắng nghe và ghi chép

3 Suy nghĩ và trả lời Var Dhs2: array

Var Nhietdo: Kmang1;

b Khai báo (Có hai cách)

+ Kbáo gián tiếp: (sgk)+ Kbáo trực tiếp: (sgk)

Ví dụ 1:

Var Nhietdo: array [1 Max]

Of real;

Ví dụ 2: Khai báo mảng tối đa

100 số nguyên (chỉ số đầu tiên

là 1)

Ta có các cách sau:

Trang 10

3 Y/cầu cho ví dụ khai báo

mảng?

Gọi hs khác: Ý nghĩa của khai

báo bạn vừa viết?

.ArrayReal

.301 phần tử.Real

a[2] p/tử ở vị trí thứ 2của mảng a

a[i] p/tử ở vị trí i củamảng a

hs trả lời câu hỏi

+ Những khai báo nào là đúng?

+ Biến a trong khai báo trên

chiếm dung lượng bộ nhớ là bao

array[-of boolean;

+ Trả lời: a chiếm 400byte trong bộ nhớ

Type

Arrayr = array[1 200] of

integer;Arrayr = array[byte] of real;Arrayb = array[-100 100] of

Trang 11

IV Hoạt dộng dạy học

1 Hoạt động 1: Kiểm tra bài cũ

1 Trình bày các cách khai báo kiểu mảng

trong NNLT Pascal?

2 Khai báo mảng gồm N số nguyên

(N500) (theo 2 cách: trực tiếp và gián tiếp)

Gọi lần lượt hs trả lời

Gọi hs khác nhận xét Nội dung trên bảng

Đánh giá, cho điểm

Hs1: Đứng tại chổ trả lời Hs2: (lên bảng)

Const N = 500;

C1: Var M : array[1 N] of integer;

C2: Type Mnguyen = array[1 N] of

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

1 Nêu đề bài toán (ghi bảng)

Y/cầu hs xác định In/Output

của bài toán

2 Ở lớp 10 ta đã xây dựng

t/toán cho bài toán này rồi

Y/cầu hs nhắc lại t/toán

3 Y/cầu hs cho biết các việc

+ Tính tổng

Bài 1: Viết CT tạo mảng A gồm

N (N100) số nguyên Tính tổngcác phần tử của mảng là bội của

một số nguyên dương k cho

trước

Trang 12

- Y/cầu hs khác lên viết phần

khai báo các biến đó?

5 Tiếp tục y/cầu hs lên viết

phần chương trình tạo giá trị

cho các ptử của mảng A (lưu

thêm gì không? (GV bổ sung)

- Y/cầu hs khác lên viết đoạn

chương trình còn lại?

** Chuẩn hoá lại chương trình

* Chạy thử chương trình với 1

bộ giá trị:

4 suy nghĩ và trả lời

- mảng Abiến đơn: N, k, S

Đứng tại chổ n/xét,(bổ sung nếu sai sót)

6 Chú ý sự dẫn dắt

vấn đề của gv, suynghĩ và trả lời: Sửdụng cấu trúc lặp For

write(‘phan tu thu ’,i,’ =’); readln(A[i]);

Hãy đưa các câu lệnh đó vào những vị trí thích hợp trong chương trình bài 1, để có được

chương trình đưa ra số các số dương và số các số âm trong mảng

Trang 13

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

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

(Treo bảng) chứa Nội dung câu

lệnh cần thêm vào chương trình ở

lệnh vào cho phù hợp để chương

trình đếm được số dương, số âm

3 Y/cầu hs lên hoàn chỉnh lại

chương trình?

** Chuẩn hoá lại chương trình

* Chạy thử chương trình với 1 bộ

- Đếm số dương hoặcđếm số âm

- Số các số dương, sốcác số âm

2 Chỉ ra vị trí cần bổ

sung và các câu lệnhcần loại bỏ bớt

{tao mang}

For i:=1 To n Do begin

write(‘phan tu thu ’,i,’

Else if A[i]<0 Then

am := am + 1;Writeln(duong: 4, am:4);

IV Củng cố bài học

1 Nội dung đã học

- Tính tổng các phần tử trong mảng thoả mãn một điều kiện

- Đếm số phần tử trong mảng thoả mãn một điều kiện

2 Câu hỏi, bài tập về nhà

- Cho 2 mảng A, B gồm n (n<=250) số nguyên Hãy viết chương trình xây dựng mảng C[1 n],trong đó C[i] là tổng của 2 phần tử thứ i thuộc mảng A và mảng B (tức là: C[i] = A[i] + B[i])

- Xem trước vídụ 2 và ví dụ 3/trang 57, 58 sgk

Trang 14

Ngày soạn: 02/1/2011 PPCT: 23

§11 KIỂU MẢNG (Tiết 3)

I Mục đích, yêu cầu

1 Kiến thức:

- Khai báo kiểu, biến mảng một chiều, cách tham chiếu dến các p/tử trong mảng

- Củng cố và làm hs hiểu sâu hơn thuật toán sắp xếp đã được học ở lớp 10

2 Kĩ năng: Hs sử dụng được biến kiểu mảng một chiều để giải quyết một bài toán đơn giản.

3 Tư duy và thái độ:

-Rèn luyện tác phong, tư duy lập trình, tự giác , tích cực, chủ động và sáng tạo trong tìm kiếm kiến thức

II Đồ dùng dạy học

1 Giáo viên: giáo án, bảng phụ, sgk

2 Học sinh: sgk

III Phương pháp

IV Hoạt động dạy học

1 Hoạt động 1: Kiểm tra bài cũ

Gọi 2 Hs lên bảng trình bày bài tập cho về

nhà tiết trước

Gọi hs khác nhận xét

Đánh giá cho điểm

2 hs lên bảng trình bàyNhận xét

2 Hoạt động 2: Phân tích bài toán trước khi viết chương trình

a Nội dung : Sắp xếp dãy số nguyên bằng thuật toán tráo đổi.

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

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

1 Nêu bài toán, y/cầu hs xác

định In/Output của bài toán

2 Y/cầu hs trình bày lại thuật

toán sắp xếp tráo đổi (Đã học ở

lớp 10)

3 Y/cầu cả lớp n/cứu lại t/toán

và trả lời các câu hỏi:

- Biến j sẽ nhận các giá trị trong

phạm vi nào? Tương tự với biến

Out: dãy A không giảm

2.Thuật toán

B1: Nhập N, dãy A ;B2: jN;

B3: nếu j<2 thì đưa radãy đã được sắp xếp,KT;

Trang 15

(với mỗi giá trị j, i lần lượt nhận

các giá trị từ 1 đến j-1)

+ 2  j  N, 1  i 

j-1+ i phụ thuộc theo j

3 Hoạt động 3: Vận dụng kiểu dữ liệu mảng một chiều để mô tả t/toán trên trong Pascal

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

2 Yêu cầu từng hs lên bảng viết

từng Nội dung của chương trình

- Khai báo những biến gì?

- Tạo mảng là làm những gì?

- Sắp xếp mảng

Hỏi: Làm thế nào để tráo đổi giá

trị 2 biến cho nhau (a[i] và

+Đưa mảng A đã sắpxếp ra màn hình

2 Lên bảng trình bàytừng Nội dung

- mảng A, biến đơn N, i,j

- Nhập sl p/tử của mảng

và nhập giá trị cho cácp/tử trong mảng

For i:=1 To n Do begin

write(‘phan tu thu ’,i,’

{dua ra mang da sap xep}

Writeln (‘Mang da duocsap xep ’);

-Cách phân tích và viết chương trình cho một bài toán.

2 Câu hỏi, bài tập về nhà

-Xem lại các bài tập về mảng đã giải ở tiết 20

-Xem trước bài: Bài thực hành số 3

Trang 16

-Bài tập: Cho mảng A gồm N phần tử hãy viết chương trình tạo ra mảng B cũng gồm N phần

tử, trong đó B[i] bằng tổng của i phần tử đầu tiên trong mảng A (B[i]= A[1]+A[2]+ +A[i])

- Hiểu được khái niệm mảng hai chiều

- Hiểu cách khai báo và tham chiếu đến các phần tử của mảng hai chiều

2 Kĩ năng

- Thực hiện được khai báo mảng hai chiều, cách tham chiếu đến một phần tử của mảng haichiều

- Thực hiện được việc tính toán các phần tử trong mảng hai chiều

3 Tư duy, thái độ

- Xây dựng lòng yêu thích giải toán bằng lập trình trên máy tính

- Luôn muốn cải tiến chương trình nhằm nâng cao hiệu quả chương trình

IV Hoạt động dạy học

1 Hoạt động 1: Kiểm tra bài cũ

Viết CT tạo và in ra màn hình mảng A gồm

n phần tử 10 phần tử Mỗi phần tử là một số

nguyên Cho biết có bao nhiêu phần tử trong

mảng có giá trị bằng số nguyên k

2 Hoạt động 2: Tìm hiểu ý nghĩa của mảng hai chiều.

Đặt vấn đề: Ở tiết trước, chúng ta đã tìm hiểu cách khai báo mảng, cách tạo mảng và truy cập đến một phần tử trong mảng một chiều Hôm nay, chúng ta sẽ tìm hiểu các vấn đề đó đối với mảng hai chiều.

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

- GV yêu cầu HS xem bảng nhân

- Với cách lưu trữ như vậy, ta

phải khai báo bao nhiêu biến

mảng?

- Khai báo như vậy có những hạn

- Xem bảng nhân ởSGK trang 59

- Sử dụng 9 mảng mộtchiều, mỗi mảng lưumột hàng của bảng

- TL: Khai báo 9 biếnmảng một chiều

- TL: Phải khai báo

§11 KIỂU MẢNG (tiết 4)

2 Kiểu mảng hai chiều:

a Xét bài toán: Bảng nhân

(SGK)

Trang 17

tử Như vậy, ta có thể biểu diễn

bảng nhân bằng kiểu dữ liệu

mảng hai chiều

- Yêu cầu HS nhận xét về mảng

hai chiều?

- Nêu khái niệm mảng hai chiều

- Để mô tả kiểu mảng hai chiều,

cần xác định những yếu tố nào?

nhiều biến, chươngtrình phải viết nhiềulệnh để tạo và in giá trịcủa mảng

- Chú ý lắng nghe

- TL: Nếu coi mỗi hàngcủa mảng hai chiều làmột phần tử thì ta có thểcoi mảng hai chiều làmảng một chiều mà mỗiphần tử của nó là mảngmột chiều

- HS trả lời

- Tham khảo SGK vàtrả lời

* Khái niệm mảng hai chiều:(SGK)

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

- GV đưa ra hai cách khai báo

biến mảng hai chiều

- GV giải thích các thành phần

trong khai báo

- Gọi HS nêu cách khai báo gián

tiếp biến B để lưu trữ bảng nhân

- TL: Tênbiến[chỉ số]

b Khai báo:

C1: Trực tiếp:

Var <tênbiếnmảng>:array [kiểu chỉ số hàng, kiểu chỉ số cột] of <kiểu phần tử>;

C2: Gián tiếp:

Type <tên kiểu mảng> = array[kiểu chỉ số hàng, kiểu chỉ số cột] of <kiểu ptử>;

Var <tên biến mảng>:<tên kiểu mảng>;

i) A[i,j]  phần tử ở hàng i, cột j của mảng A

Trang 18

đến số 81 trong bảng nhân?

- TL: B[9,9] = 81

ii) B[9,9]  phần tử ở hàng 9, cột 9 của bảng nhân B

4 Hoạt động 4: Tìm hiểu cách viết chương trình đơn giản.

Hoạt động của GV Hoạt động của HS Nội dung ghi bảng

- GV hướng dẫn HS cách tạo

mảng hai chiều có m hàng, n cột

- GV hướng dẫn HS cách in

mảng hai chiều vừa tạo

- Gọi HS lên bảng sửa lại phần

khai báo và các câu lệnh nhập

cho phù hợp với bài này

- HS lên bảng làm

+ Không khai báo m,n

+ Khai báo thêm biến T

+ Viết hai vòng for của

lệnh tạo và in mảng là:

for i := 1 to 5 do for j := 1 to 7 do

program Tao_in_mang; var i, j, m, n: integer;

A: array [1 100,1 100] ofinteger;

for j := 1 to n do write (A[i , j]:4);

Trang 19

- Cách khai báo biến mảng hai chiều.

- Cách tạo mảng hai chiều

- Cách tính toán các phần tử trong mảng hai chiều

2 Câu hỏi, bài tập về nhà : Xem các ví dụ còn lại trong SGK.

Bài tập

I Mục tiêu:

1 Về kiến thức: Củng cố các kiến thức về:

- Các quy tắc kiểu dữ liệu có cấu trúc để thực hiện dữ liệu thực tế

- Kiểu dữ liệu có cấu trúc được xây dựng từ những kiểu dữ liệu cơ sở theo một số cáchthức tạo kiểu do ngôn ngữ lập trình Pascal quy định

- Mỗi kiểu dữ liệu có cấu trúc thường hữu ích trong việc giải quyết một số bài tập

- Trong ngôn ngữ Pascal dùng mô tả kiểu dữ liệu mới với từ khoá Type

2 Về kĩ năng:

- Rèn luyện kĩ năng khai báo kiểu dữ liệu có cấu trúc (với Pascal, sử dụng thành thạocác từ khoá Var, Type)

- Sử dụng thành thạo các thao tác vào/ ra và các phép toán trên các thành phần cơ sở

3 Về tư duy và thái độ:

IV Tiến trình hoạt động:

Hoạt động 1: Giải bài tập số 6 trang 79 Sách GK Tin học lớp 11

trong dãy thì tìm số lượng số lẻ

được hay không? - Nếu được

thì tìm bằng cách nào?

- Trả lời:

Kiểu mảng một chiều:

Var A:array [1 100] ofinteger;

- Trình bày lên bảng:

TL: Chia hết cho 2.

- Nếu có số lượng sốchẵn trong dãy thì tìm sốlượng lẻ bằng cách: n -

số lượng số chẵn

Chính xác hoá bài 6/tr79

Trang 20

Hoạt động của GV Hoạt động của HS Ghi bảng

H4: Sử dụng câu lệnh nào để

viết?

- Yêu cầu HS hoàn thành

chương trình của câu a

- Nhận xét, chỉnh sửa bài làm

của HS

HĐTP 2:

H1: Nêu thuật toán kiểm tra 1

số có phải là số nguyên tố hay

không?

- Yêu cầu HS viết chương

trình dựa theo thuật toán

+ Hoạt động 2: Giải bài tập 7 trang 79 Sách GK Tin học lớp 11

- Yêu cầu HS liệt kê 6 số hạng

đầu của dãy Fiponaci

- Gợi ý: Để viết chương trình

này ta cần bao nhiêu biến phụ?

H3: sử dụng câu lệnh nào

trong bài này?

- Yêu cầu HS viết chương

Cấu trúc lệnh: While do và For do

Về nhà làm các bài tập tiếp theo

*************************

Trang 21

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 cơ bản về kiểu dữ liệu mảng, cụ thể là mảng một chiều.Qua đó cung

cấp cho học sinh các thuật toán cơ bản thường gặp với kiểu dữ liệu mảng

2.Kĩ năng:

- Rèn luyện cho học sinh một số kĩ năng làm việc với mảng như:

+Khai báo kiểu dữ liệu mảng một chiều,

+ Nhập/ xuất dữ liệu,

+Duyệt qua các phần tử của mảng,

-Qua đó giúp học sinh biết cách giải một số bài toán cơ bản thường gặp như:

+Tính tổng các phần tử thoả mãn điều kiện nào đó,

+Đếm số các phần tử thoả mãn điều kiện nào đó,

+Một số chương trình cài sẵn trong USB hoặc đĩa mềm,

+Máy chiếu hoặc bảng phụ,

-Hướng dẫn học sinh các bước thực hiện một số chương trình

IV.Tiến trình bài dạy:

Hoạt động 1: Kiểm tra bài cũ

Câu hỏi: Có mấy cách khai báo mảng một chiều? Cho ví dụ

Hoạt động học sinh Hoạt động giáo viên Ghi bảng

-Lắng nghe câu hỏi

-Học sinh trả lời câu

hỏi Cả lớp theo dõi,

nhận xét

-Nêu câu hỏi

-Gọi học sinh lên trả lời

-Giáo viên nhận xét, chođiểm

Có hai cách khai báo:

a/Khai báo trực tiếp:

Var < tên biến mảng > : array[ kiểu chỉ số ] of < kiểu phần tử>;

b/ Khai báo gián tiếp

Type < tên kiểu mảng > : array[ kiểu chỉ số ] of < kiểu phần tử>;Var < tên biến mảng >: < tên kiểumảng >;

Trang 22

Sau đó đặt câu hỏi cho họcsinh trả lời

+ Khai báo uses CRT; có ýnghĩa gì?

+Myarray là tên kiểu dữliệu hay tên biến?

+Vai trò của nmax và n có

gì khác nhau?

+Những dòng lệnh nàodùng để tạo biến mảng a

-Giáo viên giới thiệu hàmRandom cho học sinh.Sau

đố đặt câu hỏi:

+ a[i] := Random(300) –Random (300) có ý nghĩagì?

+ Lệnh for i:=1 to n do Write ( a[i] : 5);

Có ý nghĩa gì?

+Lệnh For-do cuối cùngthực hiện nhiệm vụ gì?

+Lệnh gán s := s + a[i] ;được thực hiện bao nhiêulần?

-Thực hiện lại chương trình

-Khai báo thư viện chương trìnhcon CRT để sử dụng được thủ tụcClrscr;

- Myarray : tên kiểu dữ liệu

- nmax: số phần tử tối đa có thểchứa của biến mảng a,

n: số phần tử thực tế của a

-Random(n): cho số ngẫu nhiên từ

0 đến n-1

Trang 23

2/HĐTP2: Sửa

chương trính câu a/ để

được chương trình giải

quyết bài toán câu b/

-Quan sát bảng phụ,

theo dõi và trả lời các

câu hỏi của GV

+Nếu a[i] > 0 thì cộng

a[i] vào posi; ngược lại

nếu a[i] < 0 thì cộng a[i]

là gì?

+Hướng dẫn học sinh

thêm vào vị trí cần thiết để chương trình đếm được số lượng các số âm và các số dương

+Chạy thử chưong trình đểhọc sinh theo dõi kết quả

+posi : đếm số dương trong mảng.+neg: đếm các số âm trong mảng

-Gợi ý , hướng dẫn họcsinh thuật toán tìm phần tửlớn nhất và vị trí của nó

Trang 24

-Theo dõi, suy nghĩ để

nắm thuật toán

-Đọc đoạn chương trình

sgk Liên hệ trả lời các

câu hỏi mà GV nêu ra

+Sửa a[i] > a[j] ; thành

Hỏi HS:

+ Nếu muốn tìm phần tửnhỏ nhất thì cần sửa ở chỗnào?

+Nếu muốn tìm phần tửlớn nhất với chỉ số lớn nhấtcủa nó thì ta sửa ổ chỗnào?

-Chạy thử chưong trìnhcho học sinh theo dõi

-Theo dõi học sinh thựchiện chương trình và xemkết quả

Hoạt động 4: Củng cố

-Nhắc lại cho học sinh một số kiến thức về:

+ Tính tổng các phần tử các phần tử thoả mãn một điều kiện nào đó

+ Đếm số các phần tử thoả mãn một điều kiện nào đó

+ Tìm phần tử lớn nhất/ bé nhất

BTVN- Viết một chương trình nhập một mảng một chiều, đếm số phần tử nhỏ hơn một số k

nào đó

Trang 25

- Củng cố kiến thức về dữ liệu kiểu mảng.

- Xây dựng cấu trúc dữ liệu, hiểu thuật toán sắp xếp bằng tráo đổi

2 Kĩ năng

- Biết chỉnh sữa lỗi trong chương trình

- Tự nhập các bộ dữ liệu để hiểu ý nghĩa một số câu lệnh

IV Tiến hành dạy học

1 Hoạt động 1: Nhắc lại kiến thức đã học liên quan bài thực hành

Hỏi 1: Nêu cách khai báo kiểu mảng 1

End;

2 Hoạt động 2: Xác định bài toán và tìm hiểu chương trình

1 Chiếu đề bài lên bảng.

2 Xác định bài toán

Y/cầu hs xác định dữ liệu

vào/ra của bài toán?

3. Gv minh hoạ bài toán:

- Chiếu thuật toán đã được

liệt kê các bước

4 Tìm hiểu chương trình

1 Quan sát đề và lằng

nghe câu hỏi của gv

2 Trả lời câu hỏi.

- Vào: mảng A

- Ra: mảng A đã sắpxếp

3 Theo dãy số minh

họa, nhớ lại thuật toánsắp xếp đã học

- Nhắc lại thuật toán

- Quan sát, đối chiếuthuật toán liệt kê với CT(SGK)

Đề: Sắp xếp dãy số nguyên bằng

thuật toán tráo đổi với các giá trịkhác nhau của n số

CT( SGK/65)

Trang 26

- Vai trò của biến i, j trong

CT?

- Đoạn lệnh nào thực hiện

tráo đổi giá trị 2 phần tử liền

3 Hoạt động 3: Chạy CT câu a

- Yêu cầu hs tự nhập dữ liệu

với CT có sẵn

- Giúp hs phát hiện và sữa lỗi

- Thuật toán trên tiến hành

đưa số lớn thứ j về đến vị trí j

sau mỗi vòng lặp:

For i:= 1 to j-1 do

- Chạy CT, nhập dữliệu, xm kết quả

- Chỉnh sữa CT thôngqua các thông báo lỗi

- Chú ý hiểu rõ thêm vềCT

4 Hoạt động 4: Xác định bài toán câu b

1 Xác định bài toán.

- Y/cầu hs xác I/O bài toán?

- Biến Dem được tăng lên khi

nào?

- Cần đưa câu lệnh tăng Dem

vào chỗ nào trong CT trên?

- Câu lệnh khởi tạo Dem:= 0

được đặt vào vị trí nào trong

+ Trước 3 CL tráo đổi

+ Sau 3 CL tráo đổi

- Sau CL cuối CT nên đưa CL

nào vào để hiển thị giá trị

biến Dem ra màn hình

1 Xác định bài toán:

+ I: mảng a;

+O: mảng a đã sắp xếp,

số lần tráo đổi (Dem);

TL: Khi A[i] > A[i+1]

(tức là biểu thức đktrong CL If đúng)

TL: Trong thân CL If:

trước hoặc sau 3 lệnhtráo đổi

TL: Chọn một trong hai

phương án 3, 4

Đề: Khai báo biến đếm nguyên

Dem và bổ sung vào chươngtrình những câu lệnh cần thiết đểbiến Dem tính số lần tráo đổitrong chương trình

Trang 27

4 Hoạt động 5: Sữa CT câu a để giải bài toán câu b.

- Yêu cầu hs sữa lại CT theo

IV Tiến hành dạy học

1 Hoạt động 1: Ôn lại kiến thức chuẩn bị thực hành

Hỏi 1: cách khai báo kiểu mảng 1 chiều.

Hỏi 2: (tuỳ từng lớp)

Tl: có 2 cách

+ gián tiếp:

+ trực tiếp:

2 Hoạt động 2:(13') Nêu đề bài toán và tìm hiểu

1 Ghi đề bài lên bảng.

2 Tìm hiểu đề

Y/cầu hs xác định dữ liệu

vào/ra của bài toán?

3. Gv lấy ví dụ minh hoạ

CT tạo ra mảng B[1 n], trong đó B[i]

là tổng của i phần tử đầu tiên củamảng A

Trang 28

Ban đầu: mọi B[i] = 0

Hỏi: mỗi B[i] được tạo

mới bằng bao nhiêu?

Tóm lại: B[i] = A[1] +

…+ A[i]

=

i j=1[ ]

b[i]: =0;

for j:=1 to i do b[i]:=

B1: tạo mảng A

B2: xd mảng B theo A

B3: In mảng B

3 Hoạt động 3: (5')Tối ưu chương trình

1 Dựa vào phần phân

Trang 29

thuật toán tối ưu Đối với

bài toán này theo phân

trình được cải tiến

{tùy đối tượng hs}

3 Nhìn bảng, tự điều

chỉnh hành vi nhậnthức

Đoạn CT cải tiến: Sgk

4 Hoạt động 4: (20') Hs thực hành trên máy theo nhóm

1 Y/cầu hs nhập CT cải

tiếnvào máy

2 Theo dõi quá trình

t/hiện của hs Giải quyết

3 Tự lấy Input để

chạy lại CT

5 Hoạt động 5: Củng cố, uốn nắn những sai sót thường gặp của Hs.

6 Hoạt động 6: Dặn dò: Xem, chuẩn bị trước bài 12: Kiểu xâu

- Biết được một kiểu dự liệu mới, biết được khái niệm kiểu xâu

- Phân biệt được sự giống và khác giữa kiểu mảng với kiểu xâu

- Biết được cách khai báo biến, nhập/xuất dữ liệu, tham chiếu dến từng kí tự của xâu

- Biết các phép toán liên quan đến xâu

2 Về kĩ năng

- Khai báo được biến kiểu xâu trong ngôn ngữ lập trình Pascal

- Sử dụng biến xâu và các phép toán trên xâu để giải quyết một bài toán đơn giản

3 Tư duy, thái độ

- Có thái độ nghiêm túc trong học tập, làm việc khoa học và có hứng thú giải các bài toán bằnglập trình

II Chuẩn bị của GV và HS

Trang 30

1 GV: Máy vi tính, Máy chiếu để giới thiệu ví dụ.

2 HS: SGK.

III Phương pháp

Thuyết trình, vấn đáp

IV Tiến trình bài học

Hoạt động 1: Kiểm tra bài cũ và khởi động bài mới

Ghi câu hỏi lên bảng

Phát vấn HS tại chỗ

Y/c HS khác nhận xét

Chính xác hóa nội dung

'Viet Nam' là dữ liệu kiểu

Câu hỏi:

Định nghĩa mảng một chiều vàcách khai báo

'Viet Nam' có phải là dữ liệu kiểumảng một chiều không, Vì sao?

Hoạt động 2: Tìm hiểu về dữ liệu kiểu xâu

lượng ký tự của mỗi xâu

Giới thiệu cách tham chiếu

phần tử

Trả lờiNhận xétHình thành khái niệmXâu

Cho VDTrả lời

Bài 12: KIỂU XÂUKhái niệm (SGK)

Tương tự kiểu mảng

Hoạt động 3: Khai báo dữ liệu kiểu xâu và các thao tác xử lí xâu

- Hỏi: Ý nghĩa của từ

BeginSt:='A' + 'B';

Trang 31

Nhắc lại những nội dung đã học:

- Khai báo biến

- Nhập xuất gá trị cho biến xâu

- Tham chiếu từng kí tự trong xâu

- Bước đầu sử dụng được một số hàm, thủ tục thông dụng về xâu

- Có thể cài đặt được một số chương trình đơn giản có sử dụng xâu

3 Tư duy, thái độ

-Rèn luyện tác phong, tư duy lập trình, tự giác , tích cực, chủ động và sáng tạo trongtìm kiếm kiến thức

II Chuẩn bị của GV và HS:

Diễn giải, dùng bảng để ghi lại các chi tiết quan trọng trong ví dụ

IV Tiến trình bài học.

Hoạt động 1:

Tổ chức lớp: Ổn định và kiểm tra sĩ số

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

Kiểm tra bài cũ

- Gọi HS :

Câu 1: Xâu là gì? Cách khai

báo biến xâu

- HS trả lời câu hỏi

Trang 32

HĐ GIÁO VIÊN HĐ HỌC SINH NỘI DUNG

giáo viên đưa ra một ví dụ

minh hoạ theo sgk

- Xâu gồm một kí tự trống

được viết như thế nào? số

lượng kí tự là bao nhiêu?

ĐVĐ: Bấy giờ chúng ta sẽ đi

sâu hơn về các chức năng của

các hàm và thủ tục trong xâu

- Ý nghiã của hàm Length(b)?

chú ý quan sát trênbảng

Val(St,x,m) Đổi giá trị xâu

St thành số ghi giá trị vào biến

X, nến không đổi được thì vị trígây lỗi ghi trong m, nếu đổithành công thì m = 0

Bảng phụ chứa ví dụ 1Ues crt;

Var a, b: string;

Begin Clrscr;

Write(‘ nhap ho ten thu nhat: ‘); Realn (a);

Write(‘ nhap ho ten thu hai: ‘); Realn (b);

If length(a)>length(b) then Write(a) else writer(b);Realn

End

Trang 33

HĐ GIÁO VIÊN HĐ HỌC SINH NỘI DUNG

Em nào có thể giải thích câu

TL: cho thấy hàmlength() có thể thamchiếu đến từng kí tự

cử một xâu thông qua

vị trí của nó

TL: Xâu b được tạothành từ một xâurỗng qua phép ghépxâu

Quan sát trên bảng

Bảng phụ chứa ví dụ 2Bảng phụ chứa ví dụ 3

Bảng phụ chứa ví dụ 4

Bảng phụ chứa ví dụ 5

Hoạt động 3:

Củng cố:

Nhắc lại một số hàm và thủ tục liên quan đến xâu

Nhắc lại cấu trúc câu lệnh

- Các quy tắc kiểu dữ liệu có cấu trúc để thực hiện dữ liệu thực tế

- Kiểu dữ liệu có cấu trúc được xây dựng từ những kiểu dữ liệu cơ sở theo một số cáchthức tạo kiểu do ngôn ngữ lập trình Pascal quy định

- Mỗi kiểu dữ liệu có cấu trúc thường hữu ích trong việc giải quyết một số bài tập

- Trong ngôn ngữ Pascal dùng mô tả kiểu dữ liệu mới với từ khoá Type

2 Về kĩ năng:

Trang 34

- Rèn luyện kĩ năng khai báo kiểu dữ liệu có cấu trúc (với Pascal, sử dụng thành thạocác từ khoá Var, Type).

- Sử dụng thành thạo các thao tác vào/ ra và các phép toán trên các thành phần cơ sở

3 Về tư duy và thái độ:

H1) Nhắc lại cấu trúc khai báo biến mảng một chiều? hai chiều?

H2) Nhắc lại cách thức khai báo biến xâu?

3 Nội dung

Dẫn dắt vấn đề: Chúng ta đã được tìm hiểu về 2 kiểu dữ liệu có cấu trúc là kiểu mảng vàkiểu xâu Trong tiết học hôm nay chúng ta sẽ vận dụng để giải quyết một số bài tập cơbản

GV: Nhắc lại một số

kiến thức cơ bản: khai

báo mảng? khai báo xâu?

Tham chiếu?

Gv: chuẩn xác hoá câu

trả lời của hs

Hs trả lời câu hỏi

Ghi nhớ lại kiến thức

*Gián tiếp:

Type <tên kiểu mảng> = array[kieu chi

so, kiểu chỉ số cột] of <kiểu phần tử>;Var <tên biến mảng>: <tên kiểu mảng>;

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

Kiểu xâu:

Khai báo: Var <tên biến xâu>:string[độ

Trang 35

Yêu cầu hs tìm hiểu bài

tâp 6 SGK Phân tích và

viết chương trình cho bài

toán này

Gv: Gợi ý cho hs thực

hiện từng bước sau:

+ Phân tích bài toán, mô

tả dữ liệu bài toán

+ trả lời câu hỏi: thế nào

với yêu cầu b: Đếm số

lượng số nguyên tố trong

dãy A

Tìm hiểu bài tập 2:

Gv phân tích, hướng dẫn

Viết chương trình hoàn

chỉnh nếu còn thời gian

Đọc kỹ và phân tích bàitoán

Hs xác định bài toán, dựđoán các kiểu dữ liệu chođối tượng có trong bàitoán

đứng tại chổ trả lời câuhỏi

Viết đoạn chương trìnhdưới sự hướng dẫn củagv

Theo dõi, ghi chép

Hs thực hiện các bướctương tự câu a

đọc kỹ bài tập 2 SGK)

(BT10-theo dõi và ghi nhận

dài lớn nhất của xâu];

hoặc Var <tên biến xâu>:string;

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

B Bài tập

Bt1) Bài tập 6 –SGK trang 79Chương trình:

Readln(n);

For i:=1 to n do Begin

Writeln(‘so chan:’,sochan:3,’so le:’,sole:3);

{so nguyen to}

J:=2;

For i:=1 to n doWhile j<= sqrt(a[i]) and (a[i] mod 2

<>0) do j:=j+1;

If j> sqrt(a[i]) then sonto:=sonto+1;Writeln(‘ so nguyen to:’, sonto:3);Readln

End

Bt2) bài tập 10 trang 80-SGKChương trình:

Var s: string[100];

dem,i: integer;

Begin Write(‘nhap xau ki tu S:’);

Readln(S);

Trang 36

For i:=1 to length(s) do

If (0<=s[i]) and (s[i]<=9) then dem:=dem+1;

Writeln(‘trong xau S so’,dem:3,’chu so’);

ReadlnEnd

Củng cố: Nắm chắc 2 kiểu dữ liệu có cấu trúc, cách thức khai báo, tham chiếu

Về nhà: Đọc trước bài số 13: Kiểu bản ghi.

Củng cố cho học sinh những kiến thức về xâu ký tự, đặc biệt là các hàm và thủ tục liên quan

Nắm được một số thuật toán cơ bản : tạo xâu mới, đếm số lần xuất hiện 1 ký tự…

2- Kỹ năng :

Khai báo được biến kiểu xâu

Nhập, xuất giá trị cho biến xâu

Duyệt qua được tất cả các ký tự của xâu

Sử dụng được các hàm và thủ tục chuẩn

3- Thái độ : Tự giác, tích cực, chủ động trong thực hành.

II.Chuẩn bị của giáo viên và học sinh:

GV: - Phòng máy vi tính đã được cài đầy đủ Turbo Pascal.

 Tổ chức trong phòng máy để HS có được kỹ năng cơ bản khi làm việc với kiểu xâu

HS: SGK, bài tập chuẩn bị sẵn ở nhà

III.Phương pháp dạy học:

Gợi mở, vấn đáp kết hợp hoạt động nhóm

IV.Tiến trình bài dạy:

Hoạt động 1: Tìm hiểu một chương trình, đề xuất phương án cải tiến

Hoạt động của học sinh Hoạt động của giáo viên Nội dung

HĐTP1: Tìm hiểu đề bài:

- Giới thiệu nội dung đề bài

lên bảng

- GV diễn giải: Một xâu

được gọi là Palidrom nếu ta

đọc các ký tự từ phải sang trái

sẽ giống khi đọc từ trái sang

Trang 37

* Kiểm tra 1 xâu có phải

Palidrom hay không?

*In ra: ‘ xau la Palidrom’

‘xau khong la Palidrom’

- HS nhận xét

- Quan sát GV thực hiện

chương trình, nhập dữ liệu và

kết quả của chương trình

Hoạt động 2: Tìm hiểu chương

- Gọi 2 HS trả lời

- Gọi HS khác nhận xét

- GV chính xác

- Chạy chương trình trên máy chủ

để HS kiểm nghiệm suy luận củamình

- Chú ý theo dõi yêu cầu của

GV và trả lời 1 số câu hỏi

-Thực hiện soạn thảo chương

trình vào máy theo yêu cầu

cải tiến của GV

- Nhập dữ liệu vào và thông

* Nhận xét về các cặp ở vị trí đốixứng nhau trong một xâuPalidrom?

* Ký tự thứ i đối xứng với ký tự

vị trí nào?

* Cần phải so sánh bao nhiêu cặp

ký tự trong xâu để biết được xâu

đó là Palidrom?

* Dùng cấu trúc lặp nào để sosánh ?

- Gọi HS trả lời

Trang 38

- GV chính xác

- Yêu cầu HS chi tiết hoá bằngcác câu lệnh để có 1 chương trìnhchạy đúng

- Yêu cầu HS nhập dữ liệu chosẵn của GV và thông báo kết quả -Xác nhận những bài làm có kếtquả đúng và sửa sai cho HS có kếtquả sai

Hoạt động 2: Rèn luyện kỹ năng lập trình

- Quan sát đề và xác định

những công việc cần thực

hiện

- Nhóm 1:

* Dữ liệu vào, dữ liệu ra

của bài toán?

* Nêu các nhiệm vụ chính

cần thực hiện khi giải

quyết bài toán

* Cấu trúc dữ liệu phải sử

* Ra: Dãy các số ứng với

sự xuất hiện của mỗi loại

ký tự trong xâu

* Nhiệm vụ: Duyệt từ trái

sang phải, thêm 1 đơn vị

-Thực hiện soạn thảo

chương trình vào máy theo

yêu cầu của GV

- Nhập dữ liệu vào và

thông báo kết quả cho GV

HĐTP1: GV giới thiệu đề bài

- GV nêu mục đích của bài toán

- Chia lớp thành 2 nhóm:

* Nhóm 1: Đặt các câu hỏi phân tích.

* Nhóm 2: Trả lời các câu hỏi phân

- Yêu cầu HS nhập dữ liệu cho sẵn của

GV và thông báo kết quả -Xác nhận những bài làm có kết quảđúng và sửa sai cho HS có kết quả sai

Bài 2: SGK trang 73

Trang 39

Hoạt động 3: Rèn luyện kỹ năng tìm kiếm và thay thế sự xuất hiện 1 từ bằng 1 từ khác trong một xâu văn bản

- HS trả lời

- HS nhận xét

-HS về nhà chuẩn bị

- GV giới thiệu đề bài

- GV hướng dẫn: Tìm vị trí xâu con

“anh” trong xâu st đã cho, xoá xâu con này đi rồi chèn xâu “em” vào vị trí đó

Lặp đi lặp lại điều này cho đến khi

không tìm thấy xâu “anh” cần thay thế

trong xâu st nữa

* Các hàm và thủ tục chuẩn đã biết đốivới kiểu xâu có thể tìm được vị trí xuấthiện 1 xâu con, xoá 1 xâu con, chèn 1xâu con không?

- Gọi HS trả lời

- Gọi HS khác nhận xét

- GV chính xác

- GV cùng HS thống nhất 1 dàn ýchương trình và yêu cầu HS về nhà chitiết hoá bằng các câu lệnh để có 1chương trình chạy đúng

Bài 3: SGK trang 73

Hoạt động 3: củng cố

 Nắm được một số thuật toán đơn giản liên quan đến xâu ký tự :

 Kiểm tra một xâu đối xứng

 Tìm tần suất xuất hiện của các ký tự có trong xâu

 Đọc trước nội dung bài kiểu dữ liệu tệp– thao tác với tệp

- Biết được khái niệm về bản ghi

- Biết được các khai báo bản ghi, gán giá trị, truy cập trường của bản ghi

2 Về kỹ năng:

- Khai báo được kiểu bản ghi, khai báo được biến kiểu bản ghi

- Nhận biết được trường (thuộc tính) của một biến bản ghi

3 Về tư duy và thái độ:

- Biết quy lạ về quen

- Phát triển tư duy logic từ mảng một chiều và kiểu xâu

- Tích cực học tập, lắng nghe bài giảng

- Cẩn thận, chính xác trong lập luận

Trang 40

II)CHUẨN BỊ:

Giáo viên: Giáo án, đồ dùng dạy học, bảng phụ

Học sinh:Sách giáo khoa, sách bài tập, bài cũ, bài mới

III)PHƯƠNG PHÁP: Gợi mở vấn đáp, thuyết trình diễn giải.

IV)TIẾN TRÌNH BÀI HỌC:

1.Hoạt động1: Kiểm tra bài cũ:

Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng

2.Hoạt động2: Giới thiệu bài mới

Hoạt động học sinh Hoạt động của giáo viên Ghi bảng

-Học sinh thực hiện

H1: Cho học sinh quan sátbảng kết quả điểm thi trang 74SGK

Cho học sinh kết luận

về những thông tin trong đó,

từ đó kết luận kiểu dữ liệu

H2: Chỉnh sửa, giới thiệu vềtrường, đối tượng, thuộc tínhcủa đối tượng, từ đó đi vàonội dung bài mới

3.Hoạt động3: Khai báo kiểu bản ghi

Hoạt động của học sinh Hoạt động của giáo viên Ghi bảng

-Chính xác hoá nội dung

H2:Yêu cầu học sinh khai báokiểu bản ghi, kiểu biến bảnghi cho bảng kết quả thi trang

*Lưu ý: Nếu A là biến kiểu

bản ghi, X là tên trường, đểtham chiếu đến trường X

ta viết: A.X

Ngày đăng: 07/11/2015, 06:03

HÌNH ẢNH LIÊN QUAN

Bảng   nhân   là   kiểu   mảng   một - giao an tin 10 ky 2 hoan chinh
ng nhân là kiểu mảng một (Trang 17)
Hình   giá   trị   tất   cả   các - giao an tin 10 ky 2 hoan chinh
nh giá trị tất cả các (Trang 22)
Bảng phụ chứa ví dụ 2 Bảng phụ chứa ví dụ 3 - giao an tin 10 ky 2 hoan chinh
Bảng ph ụ chứa ví dụ 2 Bảng phụ chứa ví dụ 3 (Trang 33)
Sơ đồ làm việc với tệp dùng để nhập thông tin  phải có những lệnh cơ  bản nào? - giao an tin 10 ky 2 hoan chinh
Sơ đồ l àm việc với tệp dùng để nhập thông tin phải có những lệnh cơ bản nào? (Trang 44)
Hình 1 đến 5. - giao an tin 10 ky 2 hoan chinh
Hình 1 đến 5 (Trang 48)
Hình   chữ   nhật   để   vẽ   theo - giao an tin 10 ky 2 hoan chinh
nh chữ nhật để vẽ theo (Trang 63)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w