Tải bản đầy đủ (.doc) (128 trang)

Giao an tin hoc 11 ky II

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (916.03 KB, 128 trang )

Trường PTDT Nội Trú ATK Sơn Dương

Ngày giảng

Lớp

…./…./2019

11A

…./…./2019

11B

Bài soạn Tin Học lớp 11

Sĩ số

Tên HS vắng

Tiết 19
BÀI TẬP VÀ THỰC HÀNH 2
I. MỤC TIÊU BÀI HỌC

1. Về kiến thức
- Củng cố các kiến thức về cấu trúc rẽ nhánh.
- Biết sử dụng cấu trúc rẽ nhánh (dạng thiếu – dạng đủ) một cách hợp lí
- Biết xây dựng chương trình có sử dụng cấu trúc rẽ nhánh
2. Về kĩ năng
- Xây dựng chương trình có sử dụng cấu trúc rẽ nhánh
- Làm quen với việc hiệu chỉnh chương trình


3. Về thái độ
- Có thái độ học tập tích cực, nghiêm túc. Tự giác trong thực hành, tận dụng thời
gian thực hành.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1. Giáo viên
- Giáo án, SGK, SGV, nghiên cứu trước tài liệu tham khảo, bài tập thực hành,
phòng máy, máy chiếu Projector (nếu có).
2. Học sinh
- Vở ghi, SGK, đồ dùng học tập.
- Học bài cũ và chuẩn bị bài mới
III. TIẾN TRÌNH DẠY HỌC

1. Kiểm tra bài cũ (Kết hợp trong khi thực hành)
2. Nội dung bài mới
Hoạt động của Thầy và Trò

Nội dung cần đạt

Hoạt động 1: Tìm hiểu mục đích,
yêu cầu của bài thực hành (5 phút)

1. Mục đích, yêu cầu
- Củng cố các kiến thức về cấu trúc rẽ
1

Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019



Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

nhánh.
GV: Giới thiệu cho học sinh biết mục
- Biết sử dụng cấu trúc rẽ nhánh
đích, yêu cầu cũng như thời lượng của (dạng thiếu – dạng đủ) một cách hợp lí
nội dung bài thực hành.
- Biết xây dựng chương trình có sử
HS: Quan sát, nghe giảng, ghi bài
dụng cấu trúc rẽ nhánh
- Làm quen với
chương trình

việc hiệu chỉnh

Hoạt động 2: Nội dung bài thực
hành (35 phút)

2. Nội dung

GV: Yêu cầu HS đọc thông tin SGK –
Tr 49 để tìm hiểu về bộ số Pi-ta-go.

Bài toán. Bộ số Pi-ta-go

a) Gõ chương trình sau:
- Xác định bài toán


HS: Đọc thông tin SGK.

+ Input: Ba số a, b, c

GV: Hãy cho ví dụ về bộ số Pi-ta-go?

+ Output: Ba số là bộ số Pitago hoặc
HS: Ví dụ 3 số: 3, 4, 5 lập thành bộ ba số không phải là bộ số Pitago.
số Pi-ta-go vì:
- Ý tưởng
32 + 42 = 52.
Kiểm tra xem có đẳng thức nào trong
3 đẳng thức sau đây thoả mãn không?
GV: Để kiểm tra bộ ba số a, b, c bất
a2 = b2 + c2
kì có phải là bộ Pytago hay không, ta
b2 = a2 + c2
phải kiểm tra các đẳng thức nào?
c2 = a2 + b2
HS: Kiểm tra xem có đẳng thức nào
trong 3 đẳng thức sau đây thoả mãn
không?
a2 = b2 + c2
b2 = a2 + c2
c2 = a2 + b2
GV: Đưa ra bài toán: Viết chương
trình nhập từ bàn phím 3 số nguyên
dương a, b, c và kiểm tra xem chúng có
là bộ số Pi-ta-go hay không?


- Nội dung chương trình:
program Pi_ta_go;
uses crt;

Yêu cầu HS xác định Input/Output và
xây dựng thuật giải cho bài toán.

var a,b,c:integer;

HS: Xác định Input/Output – xây
dựng thuật giải của bài toán.

begin

a2, b2,c2: longint;
2

Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

clrscr;
GV: Giới thiệu chương trình giải bài
toán (SGK – Tr 49, 50). Chia nhóm thực

hành và tổ chức cho HS gõ chương trình
vào máy.

write('a, b, c: ');
readln(a,b,c);
a2:=a;
b2:=b;

Gv: Thực hành làm mẫu 1 số thao tác
trên máy chiếu cho học sinh quan sát,
hướng dẫn, giải thích cho học sinh hiểu
cách hoạt động và các chú ý trong khi
soạn thảo chương trình.
HS: Quan sát, nghe giảng
HS: Thực hiện theo yêu cầu của GV.
GV: Chú ý: trước else không có dấu
chấm phẩy (;).

c2:=c;
a2:=a2*a;
b2:=b2*b;
c2:=c2*c;
if (a2=b2+c2) or (b2=a2+c2) or
(c2=a2+b2)
then writeln('Ba so da nhap la bo so
Pi_ta_go ')
else
writeln('Ba so da nhap khong la bo so
Pi_ta_go ');
readln

end.

GV: Yêu cầu HS lưu chương trình lên
đĩa rồi nhấn phím F7 để thực hiện từng
b) Lưu chương trình với
câu lệnh chương trình, nhập các giá trị
a=3, b=4, c=5. Yêu cầu nhập thêm các PITAGO lên đĩa
giá trị khác ngoài ba giá trị yêu cầu.

tên

HS: thực hiện theo yêu cầu của GV.
c) Nhấn phím F7 để thực hiện từng
Gv: Quan sát, hướng dẫn cho học câu lệnh chương trình, nhập các giá
sinh trong khi thực hành, kịp thời sửa trị a=3, b=4, c=5.
chữa những lỗi nếu có trong quá trình
học sinh thực hành
KQ: a,b,c: 3 4 5
GV: Hướng dẫn, làm mẫu cách thực
Ba so da nhap la bo so Pi_ta_go
hiện việc theo đúng giá trị của các biến
a2, b2, c2 của CT bằng cách nhấn phím
F7 và theo đúng các giá trị của biến trên
cửa sổ Watches, Trước hết cần dùng tổ
3
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019



Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

hợp phím Ctrl+F7 để hiện cửa sổ Add
d) Vào bảng Debug mở cửa sổ hiệu
Watches (Hoặc vào bảng chọn Debug chỉnh để xem giá trị a2, b2, c2;
chọn Add watch) sau đó nhập tên biến
(ví dụ a2 là biến đang cần theo đúng giá
trị) và nhấn phím Enter sẽ có tên biến a2
cựng giá trị của nó. Tương tự với các
biến khác cần theo dõi b2, c2.
HS: Quan sát và thực hành theo
hướng dẫn trên.
Gv: Quan sát, hướng dẫn học sinh
cách thực hiện.
HS: Thực hành theo yêu cầu
3. Củng cố và luyện tập (3 phút)
- Nhấn mạnh cách theo dõi giá trị của các biến khi chạy chương trình.
- Trước else không có dấu chấm phẩy (;).
- Khi nhập bộ giá trị cho các biến thì các giá trị cách nhau bằng dấu cách.
- Lưu lại chương trình vừa chỉnh sửa.
- Thoát khỏi Pascal, tắt máy tính đúng qui trình.
4. Hướng dẫn học sinh tự học ở nhà (2 phút)
- Học và ôn lại các nội dung bài học
- Tiết sau kiểm tra một tiết lý thuyết, yêu cầu về nhà ôn lại các kiến thức đã được
học
- Trả lời các câu hỏi và làm các bài tập SGK (trang 50 + 51)

4

Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Ngày giảng

Lớp

…./…./2019

11A

…./…./2019

11B

Bài soạn Tin Học lớp 11

Sĩ số

Tên HS vắng

Tiết 20
BÀI TẬP VÀ THỰC HÀNH 2 (TIẾP)
I. MỤC TIÊU BÀI HỌC

1. Về kiến thức

- Củng cố các kiến thức về cấu trúc rẽ nhánh.
- Biết sử dụng cấu trúc rẽ nhánh (dạng thiếu – dạng đủ) một cách hợp lí
- Biết xây dựng chương trình có sử dụng cấu trúc rẽ nhánh
2. Về kĩ năng
- Biết sử dụng cấu trúc rẽ nhánh trong việc xây dựng chương trình giải một số
bài toán cụ thể
- Làm quen với các công cụ hiệu chỉnh chương trình
3. Về thái độ
- Có thái độ học tập tích cực, nghiêm túc. Tự giác trong thực hành, tận dụng thời
gian thực hành.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1. Giáo viên
- Giáo án, SGK, SGV, nghiên cứu trước tài liệu tham khảo, bài tập thực hành,
phòng máy, máy chiếu Projector (nếu có).
2. Học sinh
- Vở ghi, SGK, đồ dùng học tập.
5
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

- Học bài cũ và chuẩn bị bài mới
III. TIẾN TRÌNH DẠY HỌC


1. Kiểm tra bài cũ (Kết hợp trong khi thực hành)
2. Nội dung bài mới
Hoạt động của giáo viên và học sinh

Nội dung bài giảng

Hoạt động 1: Tìm hiểu lại về câu
lệnh rẽ nhánh và bài toán Pi_ta_go
(10 phút).

Câu lệnh rẽ nhánh

Gv: Giới thiệu lại cho học sinh về câu
lệnh rẽ nhánh If.. Then dạng thiếu và
dạng đủ trong ngôn ngữ lập trình TP.

- Dạng đủ:

- Dạng thiếu:
If <điều kiện> then <câu lệnh>;
If <điều kiện> then <câu lệnh 1>
else

- Dạng thiếu:

<câu lệnh 2>;

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

Bài toán. Bộ số Pi-ta-go


- Dạng đủ:

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

If <điều kiện> then <câu lệnh 1>
else
<câu lệnh 2>;

+ Input: Ba số a, b, c
+ Output: Ba số là bộ số Pitago hoặc
ba số không phải là bộ số Pitago.

- Ý tưởng
Gv: Giới thiệu lại bài toán Pi-ta-go,
các yêu cầu, cách xác định bài toán, ý
Kiểm tra xem có đẳng thức nào trong 3
tưởng để xây dựng bài toán và cách sử đẳng thức sau đây thoả mãn không?
dụng câu lệnh rẽ nhánh áp dụng để thực
a2 = b2 + c2
hiện bài toán Pi-ta-go trong TP
b2 = a2 + c2
c2 = a2 + b2
Hoạt động 2: Nội dung thực hành
(30 phót)

Bài thực hành
Program Pi_ta_go;

GV: Hướng dẫn hs mở tệp lưu bài

tập chương trình PITAGO (chọn FILE
chọn OPEN, hoặc nhấn phím F3, chọn
tệp cần mở) sau đó thực hiện các yêu
cầu của bài toán.

Uses crt;
Var a, b, c: integer;
6

Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

HS: Thực hành theo hướng dẫn của
giáo viên, mở chương trình

a2,b2,c2: longint;
Begin

Gv: Quan sát, hướng dẫn học sinh
thực hành mở chương trình đã gõ trong
tiết thực hành trước.

Clrscr;
Write(‘Nhap a, b, c =’);


Gv: Yêu cầu học sinh sau khi đã mở
được chương trình trên, sau đó tắc hết
màn hình và quan sát thầy giáo hướng
dẫn thực hành nội dung của các phần
tiếp theo.

Readln(a,b,c);
a2:=a;
b2:=b;

HS: Thực hiện theo yêu cầu, quan sát,
nghe giảng.

c2:=c;
a2:=a2*a;

Gv: Quan sát, hướng dẫn học sinh
cách thực hiện.

b2:=b2*b;

HS: Thực hành, báo cáo kết quả.

c2:=c2*c;

GV: Yêu cầu học sinh tiếp tục nhấn
phím F7 để thực hiện từng câu lệnh tính
giá trị nói trên và so sánh với kết quả ở
ý trên.


if (a2=b2+c2) or (b2=a2+c2) or
(c2=a2+b2) then

writeln(‘Ba so da nhap la bo
HS: Thực hành theo yêu cầu, quan sát so Pi-ta-go’)
quá trình rẽ nhánh.
else
GV: Yêu cầu HS thực hiện lặp lại các
bước như trên với a=700, b=1000,
writeln(‘Ba so da nhap khong
c=800 và tự làm các thao tác như trên. la bo so Pi – ta – go’);
trong thời gian này hướng dẫn một số
học sinh thực hiện các thao tác trong bài
readln
thực hành.
End.
HS: Quan sát và thực hiện theo nội
dung yêu cầu.
e) Nhấn phím F7 để thực hiện các câu
lệnh tính những giá trị nói trên, so sánh
Gv: Yêu cầu học sinh tự nhập với các với kết quả a=9, b=16, c=25;
dữ liệu khác và tự so sánh kết quả (Nếu
7
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương


Bài soạn Tin Học lớp 11

còn thời gian).
Gv: Yêu cầu học sinh sau khi đã mở
được chương trình trên, sau đó tắc hết
màn hình, gọi học sinh đọc yêu cầu thực
hành của câu h trong bài thực hành 2.

f) Quan sát quá trình rẽ nhánh;

HS: Đọc bài
Gv: Thực hành làm mẫu, hướng dẫn
g) Lặp lại các bước nói trên với
cho học sinh hiểu cách thực hiện của bài
thực hành, tiếp tục sử dụng bảng chọn a=700, b=1000, c=800;
Debug và dùng phím F7 để theo dõi
h) Nếu thay dãy lệnh
từng câu lệnh, sau đó so sánh với kết
quả của câu g.
a2:=a;
HS: Quan sát, thực hiện theo yêu cầu
của bài tập

b2:=b;
c2:=c;

Gv: Gọi một số học sinh yêu cầu cho
biết kết quả của việc thay đổi trên có gì
thay đổi so với kết quả của câu g.


a2:=a2*a;
b2:=b2*b;

HS: Trả lời.

c2:=c2*c;

Gv: Cho học sinh quan sát kết quả
của việc thay đổi. Kết quả không thay
đổi so với dữ liệu ở câu g.

Bằng dãy lệnh
a2=:a*a;
b2:=b*b;

HS: Quan sát, Thực hành

c2:=c*c;
thì kết quả có gì thay đổi với bộ dữ liệu
cho ở câu g.

3. Củng cố và luyện tập (3 phút)
- Giáo viên nhắc lại cách sử dụng một số công cụ trong TP hỗ trợ cho việc thực
hiện, theo dõi, thay đổi giá trị biến trong chương trình.
+ Nhấn phím F7 để thực hiện từng câu lệnh chương trình;
8
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019



Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

+ Chọn Debug để mở cửa sổ hiệu chỉnh hoặc nhấn tổ hợp phím Cltr + F7.
- Thoát khỏi Pascal, tắt máy tính đúng qui trình.
4. Hướng dẫn học sinh tự học ở nhà (2 phút)
- Học và ôn lại các nội dung bài học
- Về nhà xem trước nội dung chương IV Kiểu dữ liệu có cấu trúc bài 10: Kiểm
mảng giờ sau học lý thuyết.

9
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Ngày giảng

Lớp

…./…./2019

11A

…./…./2019


11B

Bài soạn Tin Học lớp 11

Sĩ số

Tên HS vắng

CHƯƠNG IV: KIỂU DỮ LIỆU CÓ CẤU TRÚC
Tiết 21:
BÀI 11: KIỂU MẢNG
I. MỤC TIÊU BÀI HỌC

1. Về kiến thức
- Kiểu mảng là một kiểu dữ liệu có cấu trúc; rất cần thiết và hữu ích trong nhiều
chương trình;
- Mảng một chiều là một dãy hữu hạn các phần tử cùng kiểu;
- Các NNLT thông dụng cho phép người lập trình xây dựng kiểu dữ liệu mảng
một chiều;
- Để mô tả mảng một chiều cần khai báo kiểu của các phần tử và cách đánh số
các phần tử của nó;
- Có thể tham chiếu phần tử của mảng bằng tên của mảng và chỉ số tương ứng
của phần tử này.
- Có hai cách đẻ khai báo kiểu dữ liệu mảng một chiều trong TP.
2. Về kỹ năng
- Nhận biết được các thành phần trong khai báo kiểu mảng một chiều;
- Nhận biết các định danh của phần tử kiểu mảng một chiều xuất hiện trong một CT;
- Biết cách khai bào kiểu mảng đơn giản với chỉ số kiểu miền con của kiểu nguyên.
- Tạo được kiểu mảng một chiều và sử dụng biến mảng một chiều trong ngôn

ngữ lập trình Pascal để giải quyết một số bài toán cụ thể đơn giản.
10
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

3. Về thái độ
- Tiếp tục xây dựng lòng ham thích lập trình, nhằm giải quyết các bài toán bằng
máy tính.
- Có ý thức tự giác học tập và có tinh thần tập thể tham gia hoạt động nhóm.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1. Giáo viên
- Giáo án, SGK, SGV, nghiên cứu trước tài liệu tham khảo, phòng máy, máy
chiếu hoặc màn hình lớn.
2. Học sinh
- Vở ghi, SGK, đồ dùng học tập.
- Học bài cũ và chuẩn bị bài mới
III. TIẾN TRÌNH DẠY HỌC

1. Kiểm tra bài cũ (Không)
2. Nội dung bài mới
Hoạt động của giáo viên và học sinh

Nội dung bài giảng


Hoạt động 1 Tìm hiểu Kiểu mạng 1
chiều (25 phút)

1. Kiểu mảng một chiều

GV: Yêu cầu HS tự đọc phần đầu của
mục 1 SGK –T53

Ví dụ. Nhiệt độ trung bình của tuần.

HS: Đọc SGK

Nhiệt độ trung bình của ngày (SGK T53+54)

Gv: Cùng học sinh đi phân tích ví dụ
xét nhiệt độ trung bình của tuần và của N
ngày. Từ đó cho các em thấy được tầm
quan trọng của mảng.

- Mảng một chiều là dãy hữu hạn các
GV: Trình bày và giải thích câu lệnh phần tử cùng kiểu. Mảng được đặt tên và
cho chương trình Nhietdo_tuan SGK- mỗi phần tử của nó có một chỉ số. Để mô
T53 và CT Nhietdo_Nngay SGK- T54 tả mảng một chiều cần xác định kiểu của
các phần tử và cách đánh số các phần tử
(Trình chiếu).
của nó.
GV: Qua hai ví dụ trên ta thấy được
11
Giáo viên: Lại Minh Tuyên


Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

rằng, khi cần giải bài toán lên đến N ngày
- Khi xây dựng và sử dụng kiểu mảng
thì cách làm như CT Nhietdo_tuan không một chiều, các NNLT có quy tắc, cách
những đòi hỏi một khối lượng khai báo thức cho phép xác định:
khá lớn mà CT tính toán cũng khá dài. Vì
+ Tên kiểu mảng một chiều;
vậy cần sử dụng đến mảng để giải quyết
+ Số lượng phần tử;
những bài toán như vậy. Vậy mảng là gì?
+ Kiểu dữ liệu của phần tử;
GV: Hãy cho biết khái niệm về mảng
một chiều? Tại sao cần dùng đến mảng
+ Cách khai báo biến mảng;
một chiều?
+ Cách tham chiếu đến phần tử.
HS: Trả lời
a) Khai báo
GV: Các ngôn ngữ lập trình có qui tắc
* Tổng quát, khai báo mảng một
và cách thức cho phép xác định.
chiều có hai dạng
HS: Quan sát, nghe giảng, ghi bài

- Cách 1: khai báo trực tiếp.
GV: Các em hãy quan sát hai ví dụ
Var <tên biến mảng>:array[kiểu chỉ
trên; đó là các cách khai báo mảng một
số] of <kiểu phần tử>;
chiều. Qua các ví dụ trên, em hãy chỉ ra
- Cách 2: Khai báo gián tiếp.
cách khai báo mảng một chiều tổng quát.
HS: Trả lời câu hỏi

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

GV: Lấy ví dụ phân tích cho học sinh
Var <tên biến mảng>: hiểu các thành phần trong khai báo và
mảng>;
các cách khai báo mảng.
Trong đó:
Ví dụ 1
Var LOP: array[40.. 100] of integer;
TO: array[1.. 7] of integer;
Ví dụ 2
Type
MyArray = array[1.. max] of real;
Var
N: MyArray;

+ Kiểu chỉ số thường là một đoạn số
nguyên liên tục có dạng n1.. n2 với n1,

n2 là các hằng hoặc biểu thức nguyên
xác định chỉ số đầu và chỉ số cuối (n1 ≤
n2);
+ Kiểu phần tử là kiểu của phần tử
mảng.
* Cách tham chiếu đến phần tử của
mảng:

HS: Quan sát, nghe giảng, ghi bài

Tham chiếu đến phần tử của mảng được
GV: Vậy để có thể tham chiếu đến xác định theo cú pháp sau:
phần tử của mảng người ta sử dụng cấu
Tên biến mảng [Giá trị chỉ số];
trúc như thế nào?
VD: Cho phần tử mảng sau.
HS: Suy nghĩ, trả lời câu hỏi.
12
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

GV: Nhận xét, đưa ra ví dụ, phân tích
cho học sinh hiểu cách tham chiếu đến
phần tử của mảng và một vài thông tin về

mảng.
HS: Quan sát, nghe giảng, ghi bài.

A

6

3

5

7

9

+ Tên biến mảng là A.
+ Số phần tử của mảng là 5.
+ Kiểu dữ liệu của các phần tử kiểu
nguyên.
+ Khi tham chiếu ta viết
A[3] = 5 tham chiếu đến phần tử thứ 3
và phần tử thứ 3 có giá trị là 5.

Hoạt động 2: Hoạt động nhóm (15
phút)

* Hoạt động nhóm

Khai báo mảng một chiều gồm 100
GV: Chia lớp thành 4 nhóm lớn, yêu phần tử thuộc kiểu số nguyên.

cầu các nhóm thảo luận với nội dung sau
- Nhóm 1, 3: Hãy viết khai báo mảng
(Trình chiếu yêu cầu cho các nhóm thảo một chiều theo cách 1 (trực tiếp)?
luận)
- Nhóm 2: Hãy viết khai báo mảng
HS: Thảo luận theo nhóm, hoàn thành một chiều theo cách 2 (gián tiếp)?
kết quả vào bảng phụ.
Đáp án:
Cách 1:

GV: Yêu cầu các nhóm báo cáo và
nhận xét nhóm chéo nhóm của mình

Var
a:array[1..100] of integer;
Cách 2:

HS: Báo cáo, nhận xét, bổ sung.

Type
mang=array[1..100] of integer;

GV: Nhận xét, đánh giá, kết luận.

Var
a:mang;
3. Củng cố và luyện tập (3 phút)
- Hệ thống kiến thức cần nhớ
- Cách tạo kiểu mảng một chiều và cách khai báo biến:
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ểu mảng>;
13
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

- Tham chiếu đến từng phần tử của mảng một chiều được xác định bởi tên mảng
cùng với chỉ số, được viết trong cặp dấu ngoặc [ ].
4. Hướng dẫn học sinh tự học ở nhà (2 phút)
- Học bài theo câu hỏi SGK, Lấy ví dụ đúng và khai báo mảng một chiều ở hai dạng.
- Đọc trước mục 1b một số ví dụ giờ sau tiếp tục học về kiểu mảng.

14
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Ngày giảng

Lớp

…./…./2019


11A

…./…./2019

11B

Bài soạn Tin Học lớp 11

Sĩ số

Tên HS vắng

CHƯƠNG IV: KIỂU DỮ LIỆU CÓ CẤU TRÚC
Tiết 22:
BÀI 11: KIỂU MẢNG (TIẾP)
I. MỤC TIÊU BÀI HỌC

1. Về kiến thức
- Củng cố và làm cho học sinh hiểu sâu sắc hơn những thuật toán tìm kiếm, sắp
xếp cơ bản.
- Mảng một chiều là một dãy hữu hạn các phần tử cùng kiểu;
- Các NNLT thông dụng cho phép người lập trình xây dựng kiểu dữ liệu mảng
một chiều;
- Để mô tả mảng một chiều cần khai báo kiểu của các phần tử và cách đánh số
các phần tử của nó;
- Có hai cách để khai báo kiểu dữ liệu mảng một chiều trong TP.
2. Về kỹ năng
- Nhận biết được các thành phần trong khai báo kiểu mảng một chiều;
- Nhận biết các định danh của phần tử kiểu mảng một chiều xuất hiện trong một CT;

- Biết cách khai bào kiểu mảng đơn giản với chỉ số kiểu miền con của kiểu nguyên.
- Tạo được kiểu mảng một chiều và sử dụng biến mảng một chiều trong ngôn
ngữ lập trình Pascal để giải quyết một số bài toán cụ thể đơn giản.
- Hình thành kỹ năng cơ bản về sử dụng kiểu mảng trong cài đặt chương trình.
15
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

- Các công việc liên quan trong kiểu mảng có liên quan đến câu lệnh For.. To.. Do.
3. Về thái độ
- Tiếp tục xây dựng lòng ham thích lập trình, nhằm giải quyết các bài toán bằng
máy tính.
- Có ý thức tự giác học tập và có tinh thần tập thể tham gia hoạt động nhóm.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1. Giáo viên
- Giáo án, SGK, SGV, nghiên cứu trước tài liệu tham khảo, phòng máy, máy
chiếu hoặc màn hình lớn.
2. Học sinh
- Vở ghi, SGK, đồ dùng học tập.
- Học bài cũ và chuẩn bị bài mới
III. TIẾN TRÌNH DẠY HỌC

1. Kiểm tra bài cũ (5 phút)

Câu hỏi
Viết có pháp cách khai báo mảng một chiều theo hai cách? Áp dụng khai báo
mạng một chiều gồm 50 phần tử thuộc kiểu số thực
2. Nội dung bài mới
Hoạt động của thầy và trò

Nội dung bài giảng
1. Kiểu mảng một chiều

Hoạt động 1 Tìm hiểu ví dụ 1 tìm
Max. (20 phút)

b) Một số ví dụ

- Ví dụ 1: tìm phần tử lớn nhất của dãy
GV: Cùng học sinh đi phân tích các số nguyên.
yêu cầu của ví dụ 1 trong SGK tìm
Xác định bài toán
phần tử lớn nhất của dãy số nguyên.
+ Input: Số nguyên dương N và dãy gồm
GV: Yêu cầu HS hãy cho biết Input N sô nguyên dương a , a , …, a .
1
2
n
và Output của bài toán?
+ Output: Max(a1, a2, …, an).
HS: trả lời
16
Giáo viên: Lại Minh Tuyên


Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

Gv: Nhận xét, kết luận.
GV: Giới thiệu cho học sinh nhớ lại
Thuật toán:
thuật toán tìm phần tử lớn nhất trong
B1: Nhập N, và dãy a 1, a2, …, an.
dãy số nguyên đã được học trong
B2: Max ← a1; i ← 2;
chương trình Tin học lớp 10. Phân
tích, giải thích thuật toán cho học sinh
B3: Nếu i > N thì đưa ra Max, rồi kết
hiểu.
thúc;
GV: Trình bày và giải thích chương
B4:
trình Tìm giá trị Max (Dùng màn hình
+ Nếu a 1 > Max thì Max ← a i;
lớn trình chiếu)
+ i ← i + 1 rồi quay lại B3.
HS: Quan sát, nghe giảng, ghi bài
Chương trình:
GV: Gọi HS đứng tại chỗ giải thích
ý nghĩa từng câu lệnh.
HS: Trả lời


Program Tim_max;
Const Nmax = 250;
Type
integer;

ArrInt = Array[1.. Nmax] of

Var
N, i, Max. csmax: integer;
A: arrInt;
Begin
Gv: Giới thiệu, phân tích cho học
sinh hiểu cách sử dụng kiểu mảng
trong chương trình, cách khai báo biến
mảng, cách nhập mảng, in mảng và
thao tác tìm max trong dãy số cho học
sinh hiểu rõ hơn về việc sử dụng kiểu
mảng (Trình chiếu)

Write(‘Nhap so phan tu cua day so, N=’);
Readln(N);
For i:=1 to N do
Begin
Write(‘Phan tu thu ‘,i, ‘ =’);
Readln(A[i]);
End;
Max:=A[1]; csmax:=1;

HS: Quan sát, nghe giảng, ghi bài.


For i:=2 to N do
If A[i] > Max then
Begin
Max:= A[i];
17

Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

csMax:= i;
End;
writeln(‘Gia tri cua p.tu max la:,’max);
writeln(‘Chi so cua p.tu max la:’,max);
readln
End.
Hoạt động 2: Thực hành (15
phút)

Thực hành

- Soạn thảo chương trình trên, tự hiệu
GV: Tổ chức cho học sinh bật máy chỉnh chương trình và nhập dữ liệu để kiểm
tính thực hành chương trình trên.

tra quá trình thực hiện của chương trình
GV: Yêu cầu các em tự soạn thảo,
hiệu chỉnh chương trình trên và lưu
với tên TKnhinphan.
HS: Bật máy thực hành
GV: Quan sát, hướng dẫn, sữa chữa
cho học sinh trong quá trình thực
hành.
3. Củng cố và luyện tập (3 phút)
- Củng cố cho HS nắm chắc hai cách khai báo biến mảng một chiều:
Var <tên biến mảng>: array[kiểu chỉ số] of <kiểu phần tử>;
Hoặc
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ểu mảng>;
4. Hướng dẫn học sinh tự học ở nhà (2 phút)
- Học bài theo câu hỏi SGK, làm bài tập trong SBT, đọc trước ví dụ 2 SGK- T57.

18
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Ngày giảng

Lớp

…./…./2019


11A

…./…./2019

11B

Bài soạn Tin Học lớp 11

Sĩ số

Tên HS vắng

CHƯƠNG IV: KIỂU DỮ LIỆU CÓ CẤU TRÚC
Tiết 23:
BÀI 11: KIỂU MẢNG (TIẾP)
I. MỤC TIÊU BÀI HỌC

1. Về kiến thức
- Củng cố và làm cho học sinh hiểu sâu sắc hơn những thuật toán Tìm kiếm số
hạng trong dãy số nguyên bằng thuật toán tìm kiếm nhị phân
- Các NNLT thông dụng cho phép người lập trình xây dựng kiểu dữ liệu mảng
một chiều;
- Để mô tả mảng một chiều cần khai báo kiểu của các phần tử và cách đánh số
các phần tử của nó;
- Có hai cách để khai báo kiểu dữ liệu mảng một chiều trong TP.
2. Về kỹ năng
- Nhận biết được các thành phần trong khai báo kiểu mảng một chiều;
- Nhận biết các định danh của phần tử kiểu mảng một chiều xuất hiện trong một CT;
- Biết cách khai bào kiểu mảng đơn giản với chỉ số kiểu miền con của kiểu nguyên.

- Tạo được kiểu mảng một chiều và sử dụng biến mảng một chiều trong ngôn
ngữ lập trình Pascal để giải quyết một số bài toán cụ thể đơn giản.
- Hình thành kỹ năng cơ bản về sử dụng kiểu mảng trong cài đặt chương trình.
- Các công việc liên quan trong kiểu mảng có liên quan đến câu lệnh For.. To.. Do.
19
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

3. Về thái độ
- Tiếp tục xây dựng lòng ham thích lập trình, nhằm giải quyết các bài toán bằng
máy tính.
- Có ý thức tự giác học tập và có tinh thần tập thể tham gia hoạt động nhóm.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1. Giáo viên
- Giáo án, SGK, SGV, nghiên cứu trước tài liệu tham khảo, phòng máy, máy
chiếu hoặc màn hình lớn.
2. Học sinh
- Vở ghi, SGK, đồ dùng học tập.
- Học bài cũ và chuẩn bị bài mới
III. TIẾN TRÌNH DẠY HỌC

1. Kiểm tra bài cũ (5 phút)
Câu hỏi

- Viết chương trình nhập vào mảng 1 chiều gồm 10 phần tử, đưa mảng vừa nhập
ra màn hình.
2. Nội dung bài mới
Hoạt động của thầy và trò

Nội dung bài giảng
1. Kiểu mảng một chiều

Hoạt động 1: Tìm hiểu ví dụ 2
b) Một số ví dụ
sắp xếp dãy số bằng tráo đổi (15
Ví dụ 2: sắp xếp dãy số nguyên bằng
phút)
thuật toán tráo đổi.
GV: Cùng học sinh đi phân tích các
+ Input: Số nguyên dương N và dãy A
yêu cầu của ví dụ 2 trong SGK Sắp gồm N số nguyên dương a , a , …, a .
1
2
n
xếp dãy số bằng thuật toán tráo đổi.
+ Output: dãy A đựơc sắp xếp thành dãy
không giảm.
GV: Yêu cầu HS hãy cho biết Input
Thuật toán:
và Output của bài toán?
B1: Nhập N và dãy a 1, a2, …, an.
20
Giáo viên: Lại Minh Tuyên


Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

B2: M ← N;
HS: trả lời
Gv: Nhận xét, kết luận.

B3: Nếu M < 2 thì đưa ra dãy A đã được
SX rồi kết thúc;
B4: M ← M – 1; i ← 0;

B5 i ← i + 1;
GV: Giới thiệu cho học sinh nhớ lại
thuật toán sắp xếp dãy số bằng tráo
B6: Nếu i > M thì quay lại B3;
đổi đã được học trong chương trình
B7: Nếu ai > ai+ 1thì tráo đổi a i và ai+ 1 cho
Tin học lớp 10. Phân tích, giải thích nhau;
thuật toán cho học sinh hiểu.
B8: quay lại B5.
Chương trình:
GV: Trình bày và giải thích chương
trình sắp xếp dãy số bằng tráo đổi
(Dùng màn hình lớn trình chiếu)
HS: Quan sát, nghe giảng, ghi bài


Program sap_xep;
Const Nmax = 250;
Type
integer;

ArrInt = Array[1.. Nmax] of

Var
N, i, j, TG: integer;

GV: Gọi HS đứng tại chỗ giải thích
ý nghĩa từng câu lệnh.
HS: Trả lời

A: arrInt;
Begin
Write(‘Nhap so phan tu cua day so, N=’);
Readln(N);
For i:=1 to N do

Gv: Giới thiệu, phân tích cho học
sinh hiểu cách sử dụng kiểu mảng
trong chương trình, cách khai báo biến
mảng, cách nhập mảng, in mảng và
thao tác sắp xếp dãy số bằng tráo đổi
(Sắp xếp tăng dần) trong dãy số cho
học sinh hiểu rõ hơn về việc sử dụng
kiểu mảng (Trình chiếu)

Begin

Write(‘Phan tu thu ‘,i, ‘ =’);
Readln(A[i]);
End;
For j:=N downto 2 do
For i:=1 to j – 2 do
If A[i] > A[i+1] then
Begin
TG:=A[i];

HS: Quan sát, nghe giảng, ghi bài.
21
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

A[i]:=A[i+1];
A[i+1]:=TG;
End;
Writeln(‘Day so duoc sap xep la:’);
For i:=1 to N do writeln(A[i]):4);
Readln
End.
Hoạt động 2: Thực hành (15
phút)


Thực hành

- Soạn thảo chương trình trên, tự hiệu
GV: Tổ chức cho học sinh bật máy chỉnh chương trình và nhập dữ liệu để kiểm
tính thực hành chương trình trên.
tra quá trình thực hiện của chương trình
GV: Yêu cầu các em tự soạn thảo,
hiệu chỉnh chương trình trên và lưu
với tên TKnhinphan.
HS: Bật máy thực hành
GV: Quan sát, hướng dẫn, sữa chữa
cho học sinh trong quá trình thực
hành.
3. Củng cố và luyện tập (3 phút)
- Hệ thống kiến thức cần nhớ
- Cách khai báo biến mảng; cách nhập mảng; cách in mảng; một vài thao tác với
mảng.
4. Hướng dẫn học sinh tự học ở nhà (2 phút)
- Học bài theo câu hỏi SGK, làm bài tập trong SBT, đọc và làm bài tập trong
SGK trang 79, 80 giờ sau làm bài tập về kiểu mảng.

22
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Ngày giảng


Lớp

…./…./2019

11A

…./…./2019

11B

Bài soạn Tin Học lớp 11

Sĩ số

Tên HS vắng

Tiết 24:

BÀI TẬP
I. MỤC TIÊU BÀI HỌC

1. Về kiến thức
- Giúp học sinh hệ thống lại kiến thức cần nhớ sau khi học xong bài Kiểu Mảng
trong chương IV kiểu dữ liệu có cấu trúc
- Biết có pháp khai báo kiểu dữ liệu có cấu trúc: Kiểu mảng một chiều
- Biết vận dụng kiến thức để xây dựng chương trình.
2. Về kĩ năng
- Biết khai báo biến mảng một chiều, cách nhập, xuất mảng 1 chiều và thuật toán
đơn giản với mảng 1 chiều.

- Biết soạn thảo tự hiệu chỉnh chương trình, hiệu được ý nghĩa các câu lệnh với
chương trình cụ thể.
3. Về thái độ
- Góp phần hình thành và rèn luyện tư duy lập trình, tác phong của người lập
trình.
- Có thái độ học tập tích cực, nghiêm túc.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH

1. Giáo viên
- Giáo án, SGK, SGV, nghiên cứu trước tài liệu tham khảo, nội dung bài tập,
phòng máy, máy chiếu Projector (nếu có).
2. Học sinh
- Vở ghi, SGK, đồ dùng học tập.
- Học bài cũ và chuẩn bị bài mới
III. TIẾN TRÌNH DẠY HỌC

1. Kiểm tra bài cũ (Kết hợp trong khi chữa bài tập)
23
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

Bài soạn Tin Học lớp 11

2. Nội dung bài mới
Hoạt động của thầy và trò


Nội dung bài giảng

Hoạt động 1. Chữa Bài 6 SGK- T79
(25 phút)

Bài 6 SGK- T79

GV: Yêu cầu học sinh đọc nội dung
đề bài số 6.

PROGRAM BT6_T79;

GV: Cùng học sinh đi phân tích các
yêu cầu của bài toán. Yêu cầu học sinh
xác định bài toán? các yêu cầu của bài
toán đưa ra là gì?

VAR
A: ARRAY[1.. 100] OF INTEGER;
N, I, U: INTEGER;
SO_NT, SO_CHAN: INTEGER;

HS: Đọc bài, suy nghĩ trả lời các câu
hỏi.

BEGIN
SO_CHAN:=0;

HS: Nhận xét, bổ sung.
GV: Nhận xét, kết luận.

HS: Quan sát, nghe giảng, ghi bài.

SO_NT:=0;
WRITE('SO PHAN TU CUA DAY
A(N<=100), N = ');
READLN(N);
WHILE (N<0) OR (N>100) DO

GV: Để thực hiện được các yêu cầu
BEGIN
của bài toán ta sử dụng kiểu mảng một
WRITE('NHAP LAI, SO PHAN TU
chiều và áp dụng các câu lệnh của vòng
CUA DAY A (N<=100), N= ');
lặp thực hiện yêu cầu trên.
READLN(N);
END;
FOR I:=1 TO N DO

GV: Hướng dẫn học sinh cách khai
báo, nhập n và nhập dãy số. Đưa ra cách
tính số lượng số chẵn và số lẻ; Số lượng
số nguyên tố trong dãy.

BEGIN
WRITE('A[',I,']= ');
READLN(A[I]);
IF A[I] MOD 2= 0 THEN

(Trình chiếu chương trình cho học

sinh quan sát), giải thích cho học sinh
hiểu cách thực hiện của các câu lệnh
trong chương trình.

SO_CHAN:= SO_CHAN+ 1;
IF A[I]>1 THEN
BEGIN
U:=2;
24

Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Trường PTDT Nội Trú ATK Sơn Dương

HS: Quan sát, nghe giảng, ghi bài.

Bài soạn Tin Học lớp 11

WHILE (U<= SQRT(A[I]))
AND ((A[I] MOD U) <>0) DO
U:=U+ 1;
IF U> SQRT(A[I]) THEN
SO_NT:= SO_NT+1;
END;
END;
WRITELN('SO LUONG SO CHAN:
', SO_CHAN);

WRITELN('SO LUONG SO LE: ',
SO_LE);
WRITELN('SO LUONG SO
NGUYEN TO: ', SO_NT);
READLN
END.

Hoạt động 2: Thực hành (15 phút)

Thực hành

GV: Tổ chức cho học sinh thực hành
Soạn thảo chương trình của bài tập 6.
luôn chương trình vừa thực hiện được.
Cho biết ý nghĩa của các câu lệnh trong
HS: Bật máy thực hành, tự soạn thảo, chương trình
dịch và chạy chương trình để hiểu rõ
hơn cách hoạt động của các câu lệnh
trong chương trình.
GV: Quan sát, hướng dẫn, sửa chữa
cho học sinh trong khi các em thực
hành. Trình chiếu kết quả thực hành cho
học sinh quan sát và đối chiếu với bài
làm của mình.
HS: Thực hành theo yêu cầu, đối
chiếu kết quả.
3. Củng cố và luyện tập (3 phút)
- Cách khai báo mảng một chiều
- Nhập, in mảng một chiều
- Một vài thao tác với mảng 1 chiều.

25
Giáo viên: Lại Minh Tuyên

Năm học 2018 - 2019


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×