1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(SKKN HAY NHẤT) giáo án tin học lớp 11 học kỳ 2 phương pháp mới 5 bước hoạt động

96 4 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 96
Dung lượng 505,32 KB

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

Nội dung

4 Học sinh có nhu cầu mong muốn được học cách khai báo biến mảng Nội dung hoạt động - Trong thực tế, các kiểu dữ liệu chuẩn khôngthể đáp ứng đủ biểu diễn của các bài toán lớn.. 5 Kết quả

Trang 1

- Hiểu khái niệm mảng một chiều.

- Hiểu cách khai báo và truy cập đến các phần tử của mảng

- Thái độ nghiêm túc trong học tập.

- Chủ động tìm hiểu kiến thức mới.

4 Năng lực hướng tới:

- Khai báo biến dữ liệu hợp lý Hiểu nguyên lý lưu dữ liệu một cách có cấutrúc

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

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính,

máy chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

III TỔ CHỨC CÁC HOẠT ĐỘNG HỌC TẬP

1 Ổn định lớp

2 Kiểm tra bài cũ (không)

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

 HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh hiểu được cách sử dụng và khai báo được biến mảng

(2) Phương pháp/kĩ thuật dạy học: Cá nhân, thảo luận nhóm

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được học cách khai báo biến mảng

Nội dung hoạt động

- Trong thực tế, các kiểu dữ liệu chuẩn khôngthể đáp ứng đủ biểu diễn của các bài toán lớn

Vì thế, dựa trên các kiểu dữ liệu đó người lậptrình có thể tạo ra các kiểu dữ liệu phức tạp hơn

để giải quyết các bài toán trong thực tế

(?) Các em hãy tham khảo bài toán sách giáo

khoa trang 53 và cho biết cần nhập thông tingì? Và dữ liệu đưa ra là gì?

- Nghe giảng

- Tham khảo sách giáo khoa và trả lời:

Input: Nhập vào nhiệt độ trung bình của

7 ngày t1, t2, t3, t4, t5, t6, t7;

Output: Nhiệt độ trung bình của tuần tb,

và số ngày vượt mức trung bình dem;

Trang 2

- Nhận xét, như vậy nếu muốn tính nhiệt độtrung bình của n ngày (365 ngày) thì sẽ gặpphải những khó khăn gì?

Để giải quyết vấn đề đó, ta sử dụng kiểu mảngmột chiều để mô tả dữ liệu đó

- Hôm nay chúng ta sẽ tìm hiểu khái niệmmảng 1 chiều

- Trả lời: phải khai báo từ t1 t365.

 HOẠT ĐỘNG 2: Hình thành kiến thức

(1) Mục tiêu: Giúp học sinh biết được khái niệm về mảng một chiều, cách khai báo mảng một chiều, hiểu cách nhập và in mảng một chiều

(2) Phương pháp/kĩ thuật dạy học: Vấn đáp, thuyết trình, đặt vấn đề, phân tích

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh nắm được khái niệm về bảng, cách khai báo biến mảng một chiều, hiểu cách nhập và in mảng một chiều, hiểu được một số ví dụ giải bài toán về mảng một chiều

Nội dung hoạt động

(?) Các em hãy tham khảo sách

giáo và cho biết khi làm việcvới mảng 1 chiều cần xác địnhnhững gì?

- Nghe giảng và ghibài

* Khi làm việc với mảng một chiều ta cần xác định được:

Ví du: A

5 8 7 1Chỉ số 1 2 3 4

+ Tên mảng: A + Số lượng phần tử: 4 + Kiểu dữ liệu: Số nguyên

+ Tham chiếu đến PT thứ 3, ta

viết A[3].

- Đối với các biến trong NNLT - Ghi mục bài 2 Khai báo

Trang 3

khi sử dụng thì bắt buộc chúng

ta phải khai báo, và đối vớibiến mảng 1 chiều chúng tacũng phải khai báo Cách khaibáo thế nào thầy và cả lớp cùng

tìm hiều phần 2 Khai báo

mảng 1 chiều.

- Đối với mảng một chiều ta có

2 cách khai báo

- Bên cạnh đó ta có cách khaibáo thứ hai

- Giải thích ví dụ rõ để học sinhphân biệt tên kiểu mảng, tênbiến mảng

- Yêu cầu học sinh cho ví dụ về

2 cách khai báo trên

- Nhận xét, chỉnh sửa nếu cósai sót

- Nghe giảng và ghibài

- Nghe giảng và ghibài

Ví dụ:

VAR A: array[1 10] of real;

Cách 2 Khai báo gián tiếp

TYPE <tên kiểu mảng> =

array[<chỉ số đầu> <Chỉ số cuối>] of <kiểu phần tử>;

VAR <tên biến mảng> : <tên

- Nhận xét

(?) Giá trị của từng phần tử

mảng đã xác định được chưa,làm thế nào để có các giá trịđó?

- Nhận xét, để có được giá trịcủa các phần tử chúng ta phảinhập và thủ tục nhập như thếnào thầy và cả lớp cùng tìm

hiểu phần a Nhập mảng 1

chiều.

- Suy nghĩ trả lời: xácđịnh được tên mảng,

a/ Nhập mảng một chiều

Trang 4

- Để làm được điều đó ta cầnxác định các thao tác sau:

+ Trước tiên, cần xác định cóbao nhiêu phần tử cần dùng;

+ Dùng vòng lặp For - do để

nhập giá trị cho từng phần tửA[i]

- Hướng dẫn học sinh cách incác phần tử của mảng 1 chiều

For i:=1 to n do Begin

Write(‘Nhap phan tu thu:

 HOẠT ĐỘNG 3: Hoạt động luyện tập, vận dụng:

(1) Mục tiêu: Giúp học sinh thực hiện được thao tác tạo khai báo, nhập và in mảng một chiều

(2) Phương pháp/kĩ thuật dạy học: Vấn đáp, thuyết trình, đặt vấn đề, phân tích, so sánh,

(3) Hình thức tổ chức hoạt động: giải bài tập trên bảng(4) Phương tiện dạy học:SGK, bảng

(5) Học sinh biết vận dụng kiến thức đã học vào giải quyết tình huống thực tiễn cụ thể

Nội dung hoạt động

GV yêu cầu HS: Với cách khai báo biến mảng sau đây:

Var A:array[1 100] of integer;

Em hãy cho biết?

- Mảng tên gì? Được nhập tối đa bao nhiêu phần tử cho mảng? Các giá trị phần tử cókiểu dữ liệu gì? Cách khai báo trên là trực tiếp hay gián tiếp?

GV hướng dẫn và cho các em thảo luận

GV gọi các nhóm trả lời

GV nhận xét, giải đáp thắc mắc của học sinh, đưa ra các nhận xét cuối cùng

 HOẠT ĐỘNG 4: Hoạt động tìm tòi mở rộng:

(1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình

(2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm

(3) Hình thức tổ chức hoạt động: Ngoài lớp học(4) Phương tiện dạy học:SGK, Projector, máy tính

(5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể

Nội dung hoạt động

Trang 5

- GV: cho bài tập:

Viết chương trình nhập dãy N số nguyên (N<=200) In giá trị của phần tử cuối và đầu của dãy số

- HS: làm bài tập GV yêu cầu

- Gv: học bài và xem trước phần b

IV RÚT KINH NGHIỆM

Trang 6

- Hiểu khái niệm mảng một chiều.

- Hiểu cách khai báo và truy cập đến các phần tử của mảng

- Thái độ nghiêm túc trong học tập.

- Chủ động tìm hiểu kiến thức mới.

4 Năng lực hướng tới:

- Khai báo biến dữ liệu hợp lý Hiểu nguyên lý lưu dữ liệu một cách có cấutrúc

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

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính,

máy chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

III TỔ CHỨC CÁC HOẠT ĐỘNG HỌC TẬP

1 Ổn định lớp

2 Kiểm tra bài cũ (không)

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

 HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh hiểu được cách sử dụng và khai báo được biến mảng

(2) Phương pháp/kĩ thuật dạy học: Cá nhân, thảo luận nhóm

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được tìm hiểu cách dùng mảng trong việc giải các bài toán

Nội dung hoạt động

- Tiết trước chúng ta đã tìm hiểu về cách khaibáo mảng một chiều Nhưng khi giải các bàitoán bằng mảng ta cần hiểu sâu hơn nữa vềcách thức sử dụng mảng trong giải các bài toánđơn giản

- Hôm nay chúng ta sẽ hiểu sâu hơn qua các vídụ

- Nghe giảng

 HOẠT ĐỘNG 2: Hình thành kiến thức

Trang 7

(1) Mục tiêu: Giúp học sinh biết được khái niệm về mảng một chiều, cách khai báo mảng một chiều, hiểu cách nhập và in mảng một chiều.

(2) Phương pháp/kĩ thuật dạy học: Vấn đáp, thuyết trình, đặt vấn đề, phân tích

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh nắm được khái niệm về bảng, cách khai báo biến mảng một chiều, hiểu cách nhập và in mảng một chiều, hiểu được một số ví dụ giải bài toán về mảng một chiều

Nội dung hoạt động

- Yêu cầu học sinh đọc ví dụtrong SGK và xác định input,output

- Dựa vào SGK suynghỉ trả lời

- Chú ý lắng nghe vàghi lại bài

- Chú ý quan sát

- Chú ý quan sát cáchviết chương trình vàviết chương trình vàotập

4 Một số ví dụ

Ví dụ 1: Tìm 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 N sô nguyên dương a1,

B3: Nếu i > N thì đưa ra Max,rồi kết thúc;

Readln(N);

For i:=1 to N doBegin

Write(‘Phan tu thu ‘, i, ‘

=’);

Readln(A[i]);

End;

Trang 8

- Yêu cầu học sinh về đọc các

 HOẠT ĐỘNG 3: Hoạt động luyện tập, vận dụng:

(1) Mục tiêu: Giúp học sinh thực hiện được thao tác tạo khai báo, nhập và in mảng một chiều

(2) Phương pháp/kĩ thuật dạy học: Vấn đáp, thuyết trình, đặt vấn đề, phân tích, so sánh,

(3) Hình thức tổ chức hoạt động: giải bài tập trên bảng(4) Phương tiện dạy học:SGK, bảng

(5) Học sinh biết vận dụng kiến thức đã học vào giải quyết tình huống thực tiễn cụ thể

Nội dung hoạt động

GV yêu cầu HS: Viết chương trình nhập dãy N số nguyên (N<=100) In dãy số

nguyên vừa nhập

GV hướng dẫn và kêu một học sinh lên bảng làm bài

GV nhận xét, giải đáp thắc mắc của học sinh, đưa ra các nhận xét cuối cùng

 HOẠT ĐỘNG 4: Hoạt động tìm tòi mở rộng:

(1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình

(2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm

(3) Hình thức tổ chức hoạt động: Ngoài lớp học(4) Phương tiện dạy học:SGK, Projector, máy tính

(5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể

Nội dung hoạt động

- GV: cho bài tập:

Viết chương trình nhập dãy N số nguyên (N<=200) Tính và in ra tổng dãy số nguyênvừa nhập

- HS: làm bài tập GV yêu cầu

- GV: xem trước về bài tập mảng một chiều

IV RÚT KINH NGHIỆM

Trang 9

Trang 10

- 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ách thức tạo kiểu do ngôn ngữ lập trình Pascal quy định

- 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

- 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ề thái độ

- Thái độ nghiêm túc trong học tập, chủ động giải bài tập

4 Năng lực hướng tới

- Năng lực tự học, năng lực giải quyết vấn đề

II CHUẨN BỊ

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính,

máy chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

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

1 Ổn định lớp, kiểm tra sĩ số

2 Kiểm tra bài cũ: không.

3 Tiến trình bày học

HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh hiểu được cách thao tác với mảng một chiều(2) Phương pháp/kĩ thuật dạy học: Cá nhân

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được học cách sử dụng kiểu mảng một chiều để giải các bài toán

Nội dung hoạt động

Với những bài toán yêu cầu nhập dãy số xácđịnh ta dùng khai báo kiểu gì để lưu các giá trịđó?

Ta có thể tham chiếu đến các phần tử và lấy giátrị các phần tử của dãy số đó để tính toán đượckhông?

Để hiểu được sự lợi ích nhiều hơn của việc sửdụng kiểu mảng một chiều hôm nay chúng ta sẽlàm một số bài tập vận dụng cấu trúc rẽ nhánh,cấu trúc lặp với kiểu mảng

- Trả lời : Kiểu mảng một chiều

- Trả lời : Được

- Nghe giảng

 HOẠT ĐỘNG 2: Hình thành kiến thức

Trang 11

(1) Mục tiêu: Giúp học sinh biết được cách khai báo mảng một chiều, hiểu cách nhập

và in mảng một chiều

(2) Phương pháp/kĩ thuật dạy học: Đặt vấn đề, phân tích

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh nắm được cách khai báo biến mảng một chiều, hiểu cách nhập

và in mảng một chiều, giải được các bài toán về mảng một chiều

Nội dung hoạt động

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

- Gọi học sinh lên bảng làm

- Quan sát các học sinh kháclàm bài

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

- Nhận xét

- Xác định input và output

- Trả lời: Giá trị n vàdãy số a1,a2, an, vàoutput là số nhỏ nhất

- Trả lời: [1 100]

- Nghe giảng

- Trả lời: Biến mảng,biến min, n, i

- Một học sinh lênbảng làm

- Nhận xét

- Nghe giảng và ghibài

- Trả lời: Giá trị n vàdãy số a1,a2, an, vàoutput là các số chia

Câu 1 Viết chương trình nhập

từ bàn phím số nguyên dương

N (N<=100) và dãy A gồm N

số nguyên A1, A2, …AN Tìm

và in ra màn hình giá trị nhỏ nhất của dãy số vừa nhập?

Readln(n);

For i:=1 to n do Begin

Writeln('nhap phan tuthu ', i);

Writeln(‘Gia tri nho nhatla',min);

Trang 12

- Ta cần sử dụng hàm gì đểtính chia hết?

- Vậy đều kiện như thế nào làchia hêt?

- Cần dùng vòng lặp nào đểduyệt hết các phần tử mảng?

- Sau khi ta nhập mảng sao đóduyệt lần lượt các phần tử củamảng, số nào chia hết cho 3 thi

in số đó ra màn hình

- Gọi học sinh lên bảng làm

- Quan sát các học sinh kháclàm bài

- Nhận xét

- Nghe giảng và ghibài

và in ra màn hình các số chia hết cho 3?

Writeln('nhap vao phan tuthu ', i);

HOẠT ĐỘNG 3: Hoạt động luyện tập, vận dụng:

(1) Mục tiêu: Giúp học sinh biết được cách khai báo mảng một chiều, hiểu cách nhập

và in mảng một chiều

(2) Phương pháp/kĩ thuật dạy học: Đặt vấn đề, phân tích

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh nắm được cách khai báo biến mảng một chiều, hiểu cách nhập

và in mảng một chiều, giải được các bài toán về mảng một chiều

Nội dung hoạt động

GV cho bài tập : Viết chương trình nhập dãy N số nguyên (N<=250) Tìm và in ramàn hình các số chẵn và lẻ riêng biệt

GV hướng dẫn và kêu một học sinh lên bảng làm bài

GV nhận xét, giải đáp thắc mắc của học sinh, đưa ra các nhận xét cuối cùng

 HOẠT ĐỘNG 4: Hoạt động tìm tòi mở rộng:

(1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình

(2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm

(3) Hình thức tổ chức hoạt động: Ngoài lớp học(4) Phương tiện dạy học:SGK, Projector, máy tính

(5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể

Nội dung hoạt động

Trang 13

- GV: cho bài tập:

Viết chương trình nhập dãy N số nguyên (N<=200) Tính và in ra tổng các số chẵn

- HS: làm bài tập GV yêu cầu

- GV: xem trước về bài tập và thực hành 3

IV RÚT KINH NGHIỆM

Trang 14

Tuần: 21 + 22 Ngày soạn: 25/12/2017

- Thái độ nghiêm túc trong học tập.

4 Năng lực hướng tới:

- Giải quyết vấn đề, sử dụng công nghệ thông tin giải các bài toán đơn giản

II CHUẨN BỊ

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính, máy

chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

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

1 Ổn định lớp, kiểm tra sĩ số

2 Kiểm tra bài cũ:

- Câu 1 Thế nào là mảng một chiều?

- Câu 2 Có mấy cách khai báo mảng một chiều? Cho ví dụ từng cách khai báomảng một chiều?

- Câu 3 Viết một phần chương trình nhập vào mảng n phần tử và giá trị từngphần tử trong mảng?

3 Nội dung bài mới:

 HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh sử dụng máy tính giải các bài toán

(2) Phương pháp/kĩ thuật dạy học: Cá nhân

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được học cách sử dụng kiểu mảng một chiều để giải các bài toán

Nội dung hoạt động

- Khi làm việc với mảng một chiều trước tiênchúng ta cần thành thạo các thao tác khai báo,nhập, xuất mảng Để làm được điều đó thầy và

cả lớp cùng tìm hiểu và thực hành một số bàitập ở Bài tập và thực hành số 3 trong SGK

- Nghe giảng

 HOẠT ĐỘNG 2: Hình thành kiến thức

(1) Mục tiêu: Giúp học sinh sử dụng máy tính chạy được một số bài tập về mảng(2) Phương pháp/kĩ thuật dạy học: Thực hành trên máy tính

Trang 15

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân.

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh sử dụng máy tính chạy được một số bài toán về kiểu mảng một chiều

Nội dung hoạt động

- Đọc nội dung yêu cầu của bài1

(?) Các em hãy xác định số

lượng phần tử và yêu cầu củabài là gì?

- Nhận xét, cho ví dụ cho họcsinh quan sát

- Hướng dẫn cho học sinh cáchviết chương trình

- Với bài tập vừa làm các em

có thể vận dụng giải quyết bàitoán tìm phần tử lớn nhất trongmảng 1 chiều

- Ghi bài tập

- Suy nghĩ trả lời: đốivới bài này chúng ta

có n phần tử, sao khigiá trị các phần tử củamảng được nhập thì ta

in các phần tử trongmảng ngược lại

- Chú ý quan sát vídụ

Program Dao_nguoc_mang;

Uses crt;

Var A: Array[1 100] ofInteger;

Writeln('Nhap vao phan tuthu ', i);

Trang 16

- Yêu cầu học sinh nêu thuậttoán để giải bài toán trên.

- Nhận xét, hướng dẫn các emcách viết chương trình

- Trong học kì I thầy đã giớithiệu cho các em một số bàitoán như kiểm tra tính chẵn lẻcủa một số, tổng các số chẵn lẻtrong dãy số Hôm này chúng

tử lớn nhất của mảng.

Program Phan_tu_max;

Uses crt;

Var A: Array[1 100] ofInteger;

Writeln('Nhap vao phan tuthu ', i);

Write(‘Phan tu lon nhat ’,Max);

Program Demch_Deml;

Uses crt;

Var A: array[1 100] of Integer;

N, dle, dchan, i: Integer;

Begin

Trang 17

- Tương tự như vậy các em hãyviết chương trình tính tổng cácgiá của mảng N phần tử.

- Yêu cầu một học sinh lênbảng viết chương trình

- Nhận xét, bổ sung nếu có saisót

- Ghi bài

- Suy nghĩ và thựchiện theo yêu cầu củagiáo viên

- Chú ý quan sát vàghi bài

Clrscr;

Writeln('Nhap vao N');

Readln(N);

For i:=1 to N do Begin

Writeln('Nhap vao phan tuthu ', i);

Writeln(‘So lan xuat hien sochan la ', dchan);

Writeln('So lan xuat hien so

Program Tong_mang;

Uses crt;

Var A: Array[1 100] ofInteger;

Writeln('Nhap vao phan tuthu ', i);

Readln(A[i]);

End;

Tong:=0;

Trang 18

- Yêu cầu học sinh tham khảocác bài tập SGK trang 63, 64.

For i:=1 to N do Tong:=Tong+A[i];

Write(‘Tong mang la’,Tong);

Readln;

End.

HOẠT ĐỘNG 3: Hoạt động luyện tập, vận dụng:

(1) Mục tiêu: Giúp học sinh giải được các bài toán về kiểu mảng(2) Phương pháp/kĩ thuật dạy học: Đặt vấn đề

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh giải được các bài toán về kiểu mảng

Nội dung hoạt động

GV cho bài tập : Viết chương trình nhập dãy N số nguyên (N<=250) Đếm và in ramàn hình các số chẵn và lẻ

GV hướng dẫn và kêu một học sinh lên bảng làm bài

GV nhận xét, giải đáp thắc mắc của học sinh, đưa ra các nhận xét cuối cùng

 HOẠT ĐỘNG 4: Hoạt động tìm tòi mở rộng:

(1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình

(2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm

(3) Hình thức tổ chức hoạt động: Ngoài lớp học(4) Phương tiện dạy học:SGK, Projector, máy tính

(5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể

Nội dung hoạt động

- GV: cho bài tập:

Viết chương trình nhập dãy N số nguyên (N<=200) Tính và in ra tổng các số dương

- HS: làm bài tập GV yêu cầu

- GV: xem trước về bài tập thực hành 4

IV RÚT KINH NGHIỆM

Trang 19

Tuần: 22 + 23 Ngày soạn: 02/01/2018

BÀI TẬP VÀ THỰC HÀNH 4

I MỤC TIÊU

1 Về kiến thức

- Củng cố lại các kiến thức cơ bản khi lập trình với kiểu dữ liệu mảng

- Làm quen với thuật toán sắp xếp đơn giản trên máy tính

2 Về kĩ năng

- Rèn luyện kĩ năng sử dụng kiểu dữ liệu có cấu trúc.

- Rèn luyện kĩ năng nhận xét, phân tích và đề xuất cách giải bài toán saocho chương trình chạy nhanh hơn

3 Về thái độ

- Thái độ nghiêm túc trong học tập, tự giác, chủ động trong khi thực hành

4 Năng lực hướng tới:

- Giải quyết vấn đề, sử dụng máy tính giải một số bài toán về kiểu xâu

II CHUẨN BỊ

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính,

máy chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

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

1 Ổn định lớp, kiểm tra sĩ số

2 Kiểm tra bài cũ: không.

3 Nội dung bài mới:

 HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh sử dụng máy tính giải các bài toán

(2) Phương pháp/kĩ thuật dạy học: Cá nhân

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được học cách sử dụng kiểu mảng để giải các bài toán

Nội dung hoạt động

- Khi làm việc với kiểu mảng trước tiên chúng

ta cần thành thạo các thao tác khai báo, nhập,xuất xâu Để làm được điều đó thầy và cả lớpcùng tìm hiểu và thực hành một số bài tập ở Bàitập và thực hành số 4 trong SGK

- Nghe giảng

 HOẠT ĐỘNG 2: Hình thành kiến thức

(1) Mục tiêu: Giúp học sinh sử dụng máy tính chạy được một số bài tập về kiểu mảng(2) Phương pháp/kĩ thuật dạy học: Thực hành trên máy tính

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh sử dụng máy tính chạy được một số bài toán về kiểu mảng

Nội dung hoạt động

Trang 20

Hoạt động giáo viên Hoạt động học sinh Nội dung trình bày (?) Các em hãy cho thầy một

số ví dụ về một mảng mộtchiều có dãy số tăng dần hoặcgiảm

- Nhận xét, như vậy với mộtdãy số bất kỳ trong mảng 1chiều làm sao chúng ta có thểsắp xếp như vậy Để hiểu rõhơn thầy và cả lớp cùng xét bàitập thứ nhất

- Hướng dẫn và giải thíchchương trình

- Đối với bài toán như vậy các

Program Sap_xep;

Uses crt;

Const nmax=250;

Type arrint=array[1 nmax] ofinteger;

For i:=1 to n do write(A[i]:

5);

Writeln;

For j:=n downto 2 do For i:=1 to j - 1 do

If A[i] >A[i+1] then Begin

Trang 21

em sẽ khó hiểu, để dể hiểu hơnthầy và cả lớp cùng viếtchương trình nhập vào mảng nphần tử và nhập vào giá trịtừng phần tử chứ không chogiá trị ngẫu nhiên.

- Yêu cầu học sinh viết chươngtrình, nhận xét, chiếu chươngtrình hoàn chỉnh lên máychiếu, khi thực thi chươngtrình nhập từ bước cho họcsinh quan sát

(?) Theo các em số lần tráo đổi

của từng dãy số có khác nhaukhông?

Writeln('Nhap vao phan

For j:=n downto 2 do For i:=1 to j-1 do ifA[i]>A[i+1] then

Begin t:=A[i];

Readln;

End.

Trang 22

lần tráo đổi được không, đểbiết được đều đó thì chúng taphải đếm số lần tráo đổi Nhưvậy thì chúng ta cần phải bổxung vào chương trình cái gì?

- Nhận xét, ta cần khai báobiến dem và sao mỗi vòng lặptráo đổi ta tăng biến dem lên 1đơn vị

- Hướng dẫn học sinh cách viếtchương trình

- Cho bài tập yêu cầu học sinhhãy viết chương trình tính tổng

- Nghe giảng

- Chú ý quan sát vàghi bài

Randomize;

Write('nhap n=');

Readln(n);

For i:=1 to n doA[i]:=random(300) - random(300);

For i:=1 to n do write(A[i]:

5);

Writeln;

For j:=n downto 2 do For i:=1 to j - 1 do

If A[i] >A[i+1] then Begin

Writeln('So lan trao doi', dem);

Readln;

End.

Bài 3 Viết chương trình nhập vào mảng 1 chiều với N phần

Trang 23

các phần tử của mảng với điềukiện các phần tử đó phải chiahết cho 5.

- Giải thích yêu cầu của bàitoán

- Yêu cầu học sinh lên viếtchương trình

- Nhận xét, bổ sung nếu có saisót

(?) Giả sử bây giờ thầy muốn

đếm xem trong mảng chúng tavừa nhập có bao nhiêu phần tửchia hết cho 5 thì như thế nào?

- Hướng dẫn các em cách viếtchương trình

- Chú ý nghe giảng

- Viết chương trình

- Nghe nhận xét vàghi bài

- Suy nghĩ trả lời:

chúng ta phải kiểm tratừng phần tử sau đócoi có chia hết cho 5không, nếu chia hếtthì chúng ta đếm lênmột giá trị

- Nghe giảng và ghibài

tử, tính tổng các phần tử chia hết cho 5, sau đó in tổng ra màn hình.

Writeln('Nhap vao phan

Writeln('Nhap vao phan

Trang 24

If (A[i] mod 5=0) thenDem:=Dem+1;

Write('Mang 1 chieu co ',Dem, ‘ chia het cho 5’);

Readln;

End.

HOẠT ĐỘNG 3: Hoạt động luyện tập, vận dụng:

(1) Mục tiêu: Giúp học sinh giải được các bài toán về kiểu mảng(2) Phương pháp/kĩ thuật dạy học: Đặt vấn đề

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh giải được các bài toán về kiểu mảng

Nội dung hoạt động

GV cho bài tập : Viết chương trình nhập dãy N số nguyên (N<=250) In ra màn hìnhtổng các số chẵn và lẻ

GV hướng dẫn và kêu một học sinh lên bảng làm bài

GV nhận xét, giải đáp thắc mắc của học sinh, đưa ra các nhận xét cuối cùng

 HOẠT ĐỘNG 4: Hoạt động tìm tòi mở rộng:

(1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình

(2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm

(3) Hình thức tổ chức hoạt động: Ngoài lớp học(4) Phương tiện dạy học:SGK, Projector, máy tính

(5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể

Nội dung hoạt động

- GV: cho bài tập:

Viết chương trình nhập dãy N số nguyên (N<=200) Đếm và in ra số lần xuất hiện các

số dương và âm

- HS: làm bài tập GV yêu cầu

- GV: xem trước về bài kiểu xâu

IV RÚT KINH NGHIỆM

Trang 25

Tuần: 23 Ngày soạn: 08/01/2018

CHỦ ĐỀ 4: KIỂU XÂU BÀI 12 KIỂU XÂU

I MỤC TIÊU

1 Về kiến thức

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

- Biết cách khai báo biến, nhập xuất dữ liệu, tham chiếu đế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

- Rèn luyện kĩ năng sử dụng kiểu dữ liệu có cấu trúc.

- 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 các bài toán đơn giản

3 Về thái độ

- Nghiêm túc trong giờ học, chủ động tìm hiều kiến thức mới.

4 Năng lực hướng tới

- Nhận biết, giải quyết vấn đề, thảo luận

II CHUẨN BỊ

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính, máy

chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

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

1 Ổn định lớp, kiểm tra sĩ số

2 Kiểm tra bài cũ: không.

3 Nội dung bài mới:

 HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh hiểu được cách sử dụng và khai báo được biến xâu

(2) Phương pháp/kĩ thuật dạy học: Cá nhân, thảo luận nhóm

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được học cách khai báo biến xâu

Nội dung hoạt động

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

- Trong thực tế, các kiểu dữ liệu chuẩn khôngthể đáp ứng đủ biểu diễn của các bài toán lớn

Vì thế, dựa trên các kiểu dữ liệu đó người lậptrình có thể tạo ra các kiểu dữ liệu phức tạp hơn

để giải quyết các bài toán trong thực tế

(?) Để nhập vào một ký tự nào đó ta khai báo

kiểu dữ liệu gi?

- Nhận xet

- Vậy để nhập vào một chuỗi hay một xâu các

kí tự thì chúng ta dùng kiểu char được không?

- Để giải quyết vấn đề này hôm nay chúng ta sẽ

- Nghe giảng

- Kiểu char

- Nghe giảng

Trang 26

tìm hiểu về kiểu xâu.

 HOẠT ĐỘNG 2: Hình thành kiến thức

(1) Mục tiêu: Giúp học sinh biết được khái niệm về xâu, cách khai báo mảng một chiều, hiểu cách nhập và in một xâu kí tự

(2) Phương pháp/kĩ thuật dạy học: Vấn đáp, thuyết trình, đặt vấn đề, phân tích

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh nắm được khái niệm về xâu, cách khai báo biến xâu một chiều, hiểu cách nhập và in xâu, hiểu được một số ví dụ giải bài toán về xâu kí tự

Nội dung hoạt động

(?) Các em hãy cho thầy một

vài ví dụ về dãy kí tự nào đó?

(?) Các em hãy tham khảo sách

giáo khoa và cho thầy biết kháiniệm xâu?

- Nhận xét và nhắc lại kháiniệm

(?) Các em hãy cho thầy biết

độ dài của 2 ví dụ vừa nêu?

- Qua đó giải thích cho họcsinh biết thế nào là độ dài củaxâu

(?) Có tồn tại xâu nào không

chứa bất kì kí tự nào không?

- Nhận xét, hướng dẫn cáchbiểu diễn xâu rỗng

- Tương tự mảng 1 chiềuchúng ta có các quy tắc xácđịnh thì kiểu xâu cũng vậy

- Suy nghĩ trả lời:

Ví dụ: ‘Ha Noi’

‘Ho Chi Minh’

- Trả lời: Là dãy kí tựtrong bảng mã ASCII,mỗi kí tự là một phần

tử, được đặt trong haidấu nháy đơn ‘’

- Nghe giảng

- Ghi các quy tắc xácđịnh một xâu

1 Định nghĩa xâu

Xâu là dãy các kí tự trong bộ

mã ASCII, mỗi kí tự là mộtphần tử của xâu

- Số lượng kí tự trong một xâugọi là độ dài của xâu

- Xâu rỗng là xâu không chứa

kí tự nào (xâu có độ dài bằng0), được biểu diễn bằng hai dấunháy đơn liên tiếp ‘’

- Có thể xem xâu là mảng 1chiều mà mỗi phần tử là một kítự

Trang 27

Ví dụ: ‘Lop 11A’ gồm 7 kítự.

+ Các phép toán thao tác vớixâu như: Ghép, so sánh, chèn…

là giá trị qui định số lượng kí tựtối đa mà biến xâu có thể chứa

(?) Các em hãy cho biết khi

khai báo không có [n] thì sốlượng kí tự tối đa cho phép làbao nhiêu?

- Cho ví dụ giúp học sinh hiểu

rõ cách khai báo kiểu xâu

- Nghe giảng và ghibài

- Trả lời: Số lượng kí

tự tối đa là 255

- Chú ý quan sát, ghibài

Var hoten: string[26];

Var chugiai: string;

(?) Đối với dữ liệu chuẩn, sử

dụng thủ tục nào để nhập giátrị?

- Nhận xét, đối với kiểu xâucũng thực hiện các thao táctương tự

(?) Làm thế nào để ghép hai

hay nhiều xâu lại với nhau?

- Yêu cầu học sinh cho ví dụcách ghép xâu

(?) Các em hãy cho biết để so

- Trả lời:

+ Nhập: Read, readln

+ Xuất: Write,writeln

- Ghi bài

- Trả lời: dấu cộng(+)

* Nhập giá trị cho xâu:

Read (<tên biến xâu>);

Readln (<tên biến xâu>);

* Viết ra giá trị của xâu:

Write (<tên biến xâu>);

Writeln (<tên biến xâu>);

a Phép ghép xâu

Để ghép hai hay nhiều xâuthành một, ta dùng dấu “+” đểghép Có thể thực hiện ghépxâu đối với các hằng và biếnxâu

VD: ghép ‘Ha’ + ‘ Noi’

KQ: ‘Ha Noi’

b Các phép so sánh xâu

Trang 28

sánh, có các phép toán so sánhnào?

(?) Cho 2 xâu A và B, khi nào

thì xâu A được coi là lớn hơnxâu B?

- Nhận xét và phân tích, cho vídụ

- Để xóa kí tự trong xâu tadùng thủ tục Delete, trình bày

- Hãy nêu ví dụ về thủ tụcInsert?

- Hàm copy dùng để tạo một

sánh: =, <>, <, >, <=,

>=

- Tham khảo sáchgiáo khoa trả lời:

(A>B) Nếu xâu B làđoạn đầu của xâu A

+ (A>B) Nếu kí tựđầu tiên khác nhaugiữa chúng kể từ tráisang trong xâu A có

mã ASCII lớn hơn;

+ (A=B) Nếu chúnggiống nhau hoàn toàngiống nhau

- Nghe giảng, ghi bài

Ví dụ: A:= ‘Tin’ ;B:= ‘Hoc ’

Insert(A, B, 4)KQ: ‘Học Tin’

+ A = B nếu chúng hoàn toàn giống nhau.

Ví dụ: A:= ‘Tin hoc’

Delete( A, 4, 1)KQ: ‘Tinhoc’

Trang 29

xâu mới bằng cách sao chépcác kí tự trong xâu cũ, trìnhbày cú pháp và khái niệm.

Hãy nêu ví dụ về hàm copy?

- Hàm length dùng để trả về giátrị độ dài của xâu

Trình bày cú pháp và kháiniệm

Xác định độ dài của xâu sau:

A := ‘Truong Van Hoa II’

Hàm pos xác định vị trí xuấthiện đầu tiên của xâu này trongmột xâu khác hay vị trí xuấthiện đầu tiên của một dãy kí tựtrong một xâu

Trình bày cú pháp và kháiniệm

Trình bày cú pháp và khái niệm(?) Cho ví dụ về hàm Upcase?

Ví dụ: A:= ‘Muaxuan’

Copy(A, 5, 4)KQ: ‘xuan’

kí tự hoặc dãy kí tự trong xâu x

Ví dụ:

A := ‘Ho Guom’

B := ‘Guom’

Pos(B, A) Kq: 4

 HOẠT ĐỘNG 3: Hoạt động luyện tập, vận dụng:

(1) Mục tiêu: Giúp học sinh thực hiện được thao tác tạo khai báo, nhập và in mảng một chiều

(2) Phương pháp/kĩ thuật dạy học: Vấn đáp, thuyết trình, đặt vấn đề, phân tích, so sánh,

(3) Hình thức tổ chức hoạt động: giải bài tập trên bảng(4) Phương tiện dạy học:SGK, bảng

(5) Học sinh biết vận dụng kiến thức đã học vào giải quyết tình huống thực tiễn cụ thể

Nội dung hoạt động

Trang 30

GV yêu cầu HS: Viết khai báo xâu a có độ dài lớn là 200 kí tự và xâu b có độ dài lớn

nhất

GV hướng dẫn và kêu một học sinh lên bảng làm bài

GV nhận xét, giải đáp thắc mắc của học sinh, đưa ra các nhận xét cuối cùng

 HOẠT ĐỘNG 4: Hoạt động tìm tòi mở rộng:

(1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình

(2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm

(3) Hình thức tổ chức hoạt động: Ngoài lớp học(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể

Nội dung hoạt động

- GV: cho bài tập:

Cho xâu s:= ‘Thien Ho Dương’

- Viết hàm xác định độ dài của xâu s

- Viết thủ tục xóa xâu s thành ‘Thien Ho’

- HS: làm bài tập GV yêu cầu

Trang 31

Tuần: 24 Ngày soạn: 08/01/2018

BÀI 12 KIỂU XÂU (Tiếp theo)

I MỤC TIÊU

1 Về kiến thức

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

- Biết cách khai báo biến, nhập xuất dữ liệu, tham chiếu đế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

- Rèn luyện kĩ năng sử dụng kiểu dữ liệu có cấu trúc.

- 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 các bài toán đơn giản

3 Về thái độ

- Nghiêm túc trong giờ học, chủ động tìm hiều kiến thức mới.

4 Năng lực hướng tới

- Nhận biết, giải quyết vấn đề, thảo luận

II CHUẨN BỊ

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính, máy

chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

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

4 Ổn định lớp, kiểm tra sĩ số

5 Kiểm tra bài cũ: không.

6 Nội dung bài mới:

 HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh hiểu được cách sử dụng kiểu xâu để giải cách bài toán đơn giản

(2) Phương pháp/kĩ thuật dạy học: Cá nhân, thảo luận nhóm

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được học cách sử dụng kiểu xâu để giải cách bài toán đơn giản

Nội dung hoạt động

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

- Tiết trước chúng ta đã tìm hiểu về cách khaixâu, một số thao tác với xâu Nhưng khi giảicác bài toán bằng mảng ta cần hiểu sâu hơn nữa

về cách thức sử dụng xâu trong giải các bàitoán đơn giản

- Hôm nay chúng ta sẽ hiểu sâu hơn qua các vídụ

Trang 32

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân.

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh nắm được cách sử dụng kiểu xâu để giải cách bài toán đơn giảnthông qua các ví dụ

Nội dung hoạt động

Ví dụ 1 Viết chương trình

nhập vào họ đệm và tên củahọc sinh In ra màn hình họ vàtên của học sinh đó

(?) Theo các em làm sao ta có

thể in học tên học sinh?

- Hướng dẫn học sinh cách viết

chương trình

Ví dụ 2 Nhập vào hai xâu,

kiểm tra kí tự đầu tiên của xâuthứ nhất có trùng với kí tự cuốicùng của xâu thứ hai không?

- Hướng dẫn các em cách truycập phần tử cuối của xâu

- Nghe giảng và ghibài

- Trả lời: Hàm length

- Chú ý nghe giảng,ghi bài

Nghe giảng và ghibài

4 Một số ví dụ

Ví dụ 1 Viết chương trình

nhập vào họ đệm và tên của họcsinh In ra màn hình họ và têncủa học sinh đó

Ví dụ 2 Nhập vào hai xâu,

kiểm tra kí tự đầu tiên của xâuthứ nhất có trùng với kí tự cuốicùng của xâu thứ hai không?

else write(‘Khac nhau’);

Trang 33

- Nhận xét trước tiên ta phảidùng hàm length sao đó ta lặp

từ chỉ số cuối về chỉ số đầu

Ví dụ 4 Nhập vào một xâu,

đưa ra màn hình xâu thu được

từ nó nhưng đã loại bỏ dấucách

- Hướng dẫn học sinh cách viếtchương trình

Ví dụ 5 Nhập vào xâu x1, tạo

một xâu x2 gồm tất cả các chữ

số có trong x1, giữ nguyên thứ

tự xuất hiện giữa chúng, rồi in

đưa ra màn hình xâu thu được

từ nó nhưng đã loại bỏ dấucách

số có trong x1, giữ nguyên thứ

tự xuất hiện giữa chúng, rồi in

Trang 34

- Tự viết chươngtrình.

x2 := x2 + x1[i];

Writeln(‘Ket qua la: ’, x2);

Readln;

End.

 HOẠT ĐỘNG 3: Hoạt động luyện tập, vận dụng:

(1) Mục tiêu: Giúp học sinh thực hiện được sử dụng kiểu xâu để giải cách bài toán đơn giản

(2) Phương pháp/kĩ thuật dạy học: Vấn đáp, thuyết trình, đặt vấn đề, phân tích, so sánh,

(3) Hình thức tổ chức hoạt động: giải bài tập trên bảng(4) Phương tiện dạy học:SGK, bảng

(5) Học sinh biết vận dụng kiến thức đã học vào giải quyết tình huống thực tiễn cụ thể

Nội dung hoạt động

GV yêu cầu HS: Viết chương trình nhập vào hai xâu, in ra màn hình xâu dài hơn.

GV hướng dẫn và kêu một học sinh lên bảng làm bài

GV nhận xét, giải đáp thắc mắc của học sinh, đưa ra các nhận xét cuối cùng

 HOẠT ĐỘNG 4: Hoạt động tìm tòi mở rộng:

(1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình

(2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm

(3) Hình thức tổ chức hoạt động: Ngoài lớp học(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể

Nội dung hoạt động

- GV: cho bài tập:

Viết chương trình nhập hai xâu kí tự a, b bất kì Kiểm tra kí tự cuối của xâu a có trùngvới kí tự thứ hai trong xâu b hay không

- HS: làm bài tập GV yêu cầu

- GV: xem trước về bài tập kiểu xâu

IV RÚT KINH NGHIỆM

Trang 35

Tuần: 24 Ngày soạn: 15/01/2018

BÀI TẬP

I MỤC TIÊU

1 Về kiến thức

- 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ách thức tạo kiểu do ngôn ngữ lập trình Pascal quy định

- 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

- 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ề thái độ

- Thái độ nghiêm túc trong học tập, chủ động giải bài tập

4 Năng lực hướng tới

- Khai báo biến dữ liệu hợp lý Hiểu nguyên lý lưu dữ liệu một cách có cấu trúc.

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

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính,

máy chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

III TỔ CHỨC CÁC HOẠT ĐỘNG HỌC TẬP

1 Ổn định lớp

2 Kiểm tra bài cũ (không)

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

 HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh hiểu được cách thao tác với kiểu xâu(2) Phương pháp/kĩ thuật dạy học: Cá nhân

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được học cách sử dụng kiểu xâu để giải các bài toán

Nội dung hoạt động

Với những bài toán yêu cầu nhập xâu kí tự bất

kỳ ta dùng khai báo kiểu gì để lưu các giá trịđó?

Ta có thể tham chiếu đến các phần tử và lấy giátrị các phần tử của xâu kí tự được không?

Để hiểu được sự lợi ích nhiều hơn của việc sửdụng kiểu xâu hôm nay chúng ta sẽ làm một sốbài tập vận dụng cấu trúc rẽ nhánh, cấu trúc lặpvới kiểu xâu

- Trả lời : Kiểu xâu

Trang 36

(2) Phương pháp/kĩ thuật dạy học: Đặt vấn đề, phân tích.

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh nắm được cách khai báo biến mảng một chiều, hiểu cách nhập

và in mảng một chiều, giải được các bài toán về mảng một chiều

Nội dung hoạt động

- Xác định input và output

- Cần khai báo những biếnnào?

- Sử dụng vòng lặp gì để duyệtcác phần tử?

- Vòng lặp đi từ giá trị nào?

- Để so sánh một kí tự vớikhoảng trắng ta viết như thếnào?

- Gọi học sinh lên bảng làm?

- Vòng lặp đi từ giá trị nào?

- Đều kiện để lấy giá trị cho s2?

- Trả lời: Xâu s,output là số lượng dấucách

- Trả lời:Biến xâu s,dem, i

- Trả lời:vòng lặp for

- Trả lời:1->length(s)

- Trả lời:a[i]=’ ‘

- Một học sinh lênbảng làm

-Nhận xét-Nghe giảng và ghibài

- Trả lời: Xâu s1, output xâu s2

- Trả lời:Biến xâu s1,s2, i

-Trả lời:s2=’’

- Trả lời:vòng lặp for

- Trả lời :1->length(s1)-Trả lời: s1[i]<’0’ or s1[i]>’9’

Bai 1: Viết chương trình nhập một xâu s bất kỳ vào từ bàn phím Đếm và in ra màn hình xâu có bao nhiêu dấu cách?

Readln(s);

Dem:=0;

For i:=1 to length(s) do

If a[i]=’ ‘ thenDem:=dem+1;

Write(‘so luong dau cachla:’,dem);

ReadlnEnd

Bai 2: Viết chương trình nhập một xâu s1 bất kỳ vào từ bàn phím, tạo xâu s2 gồm tất cả các ký tự không phải là chữ

số có trong xâu s1 và in kết quả ra màn hình.

Program tao_xau;

Var s1,s1:string;

I:integer;

BeginWrite(‘Nhap s1:’);

Readln(s1);

S2:=’’;

For i:=1 to length(s1) do

Trang 37

- Gọi học sinh lên bảng làm?

- Quan sát

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

- Nhận xét

- Một học sinh lênbảng làm

-Nhận xét-Nghe giảng và ghibài

If s1[i]<’0’ or s1[i]>’9’ thenS2:=s2+s1[i];

Writeln(‘xau s2 la:’,s2);

ReadlnEnd

HOẠT ĐỘNG 3: Hoạt động luyện tập, vận dụng:

(1) Mục tiêu: Giúp học sinh biết được cách khai báo biến xâu, hiểu cách nhập và in xâu

(2) Phương pháp/kĩ thuật dạy học: Đặt vấn đề, phân tích

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh nắm được cách khai báo biến xâu, hiểu cách nhập và in xâu, giải được các bài toán về kiểu xâu

Nội dung hoạt động

GV cho bài tập : Viết chương trình nhập một xâu kí tự bất kì Đếm và in ra số lầnxuất hiện chữ số trong xâu

GV hướng dẫn và kêu một học sinh lên bảng làm bài

GV nhận xét, giải đáp thắc mắc của học sinh, đưa ra các nhận xét cuối cùng

 HOẠT ĐỘNG 4: Hoạt động tìm tòi mở rộng:

(1) Mục tiêu: Giúp học sinh có nhu cầu mở rộng thêm kiến thức của mình

(2) Phương pháp/kĩ thuật dạy học: làm việc cá nhân, nhóm

(3) Hình thức tổ chức hoạt động: Ngoài lớp học(4) Phương tiện dạy học:SGK, Projector, máy tính

(5) Học sinh biết cách mở rộng các kiến thức của mình thông qua bài tập cụ thể

Nội dung hoạt động

- GV: cho bài tập:

Viết chương trình nhập một xâu kí tự bất kì và một kí tự bất ki Cho biết số lần xuất hiện kí tự vừa nhập

- HS: làm bài tập GV yêu cầu

- GV: xem trước về bài tập thực hành 5

IV RÚT KINH NGHIỆM

Trang 38

Tuần: 25 Ngày soạn: 15/01/2018

BÀI TẬP VÀ THỰC HÀNH 5

I MỤC TIÊU

1 Về kiến thức

- Củng cố cho học sinh những hiểu biết về kiểu xâu

- Cung cấp cho học sinh một vài thuật toán cơ bản và đơn giản thường gặp

trong xử lý xâu

2 Về kĩ năng

- Làm việc với xâu trong lập trình

- Bước đầu viết được một số thuật toán kiêu xâu quen thuộc bằng Pascal

- 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

3 Về thái độ

- Thái độ nghiêm túc trong học tập

4 Năng lực hướng tới

II CHUẨN BỊ

1 Chuẩn bị của giáo viên: Giáo án, sách giáo khoa, sách giáo viên, máy tính, máy

chiếu, phông chiếu, bút lông, bảng,…

2 Chuẩn bị của học sinh: Sách giáo khoa, tập, viết,…

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

1 Ổn định lớp, kiểm tra sĩ số

2 Kiểm tra bài cũ: không.

3 Nội dung bài mới:

 HOẠT ĐỘNG 1: Hoạt động khởi động:

(1) Mục tiêu: Tạo động cơ để học sinh sử dụng máy tính giải các bài toán

(2) Phương pháp/kĩ thuật dạy học: Cá nhân

(3) Phương tiện dạy học: SGK, Projector, máy tính

(4) Học sinh có nhu cầu mong muốn được học cách sử dụng kiểu xâu để giải các bài toán

Nội dung hoạt động

- Khi làm việc với kiểu xâu trước tiên chúng tacần thành thạo các thao tác khai báo, nhập, xuấtxâu Để làm được điều đó thầy và cả lớp cùngtìm hiểu và thực hành một số bài tập ở Bài tập

(3) Hình thức tổ chức hoạt động: Làm việc cá nhân

(4) Phương tiện dạy học: SGK, Projector, máy tính

(5) Kết quả: Học sinh sử dụng máy tính chạy được một số bài toán về kiểu mảng

Nội dung hoạt động

Trang 39

Hoạt động giáo viên Hoạt động học sinh Nội dung trình bày

Bài 1 Nhập từ bàn phím mộtxâu Kiểm tra xâu đó có phải làxâu đối xứng không Xâu đốixứng có tính chất: đọc từ bênphải sang trái cũng thu đượckết quả giống như từ trái sangphải (còn gọi là xâupalindrome)

(?) Khi đó chúng làm như thế

nào?

- Nhận xét, bên cạnh đó ta cònkiểm tra phần tử đầu trùng vớiphần tử cuối và tương tự chođến phần tử ở giữa xâu

- Trả lời: sao khi đảongược xâu thì xâumới giống xâu cũ

- Nghe giảng và ghibài

Bài 1 Nhập từ bàn phím một xâu Kiểm tra xâu đó có phải là xâu đối xứng không Xâu đối xứng có tính chất: đọc từ bên phải sang trái cũng thu được kết quả giống như từ trái sang phải (còn gọi là xâu palindrome).

Else Writeln('Xau khong lapalindrome');

If (dem=n div 2 ) then

Trang 40

- Giới thiệu các dòng lệnh giúphọc sinh hiểu rõ cấu trúcchương trình.

Bài 2 Viết chương trình nhập

từ bàn phím một xâu kí tự S vàthông báo ra màn hình số lầnxuất lần của mỗi chữ cái tiếngAnh trong S (không phân biệtchữ hoa hay chữ thường)

- Hướng dẫn học sinh cách viếtchương trình

Writeln('Xau la palindrome') Else

Writeln('Xau khong lapalindrome');

Readln;

End.

Bài 2 Viết chương trình nhập

từ bàn phím một xâu kí tự S và thông báo ra màn hình số lần xuất lần của mỗi chữ cái tiếng Anh trong S (không phân biệt chữ hoa hay chữ thường).

For i:=1 to length(A) do A[i]:=upcase(A[i]) ; For n:=0 to 9 do begin

For i:=1 to length(A) do

If (A[i]=n) then demso:=demso+1;

end;

For j:='A' to 'Z' do begin

dem:=0;

For i:=1 to length(A) do

If (A[i]=j) thendem:=dem+1;

If (dem>0) then writeln ('ki

tu ', j, ' xuat hien ', dem, ' lan');

end;

Readln;

Ngày đăng: 01/11/2022, 10:49

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