1. Trang chủ
  2. » Mẫu Slide

Giáo án môn Tin học khối 11 - TIết 27, 28 - Bài 12: Kiểu xâu

4 13 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 157 KB

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

Nội dung

- Trong Pascal, để thực hiện ghép nhiều xâu thành một xâu sử dụng dấu + - GV: Kết quả của ví dụ trên là gì?. - Trong danh sách học sinh của lớp chúng ta, các tên được sắp xếp theo trật t[r]

Trang 1

Ngày soạn 23 tháng 11 năm 2009

Tiết 27 - 28:

Bài 12: Kiểu xâu

I Mục tiêu

1 Kiến thức

- Biết xâu là một dãy kí tự

- Biết cách khai báo xâu, truy cập phần tử của xâu

- Nắm vững cú pháp và ý nghĩa của các thủ tục và hàm với xâu

2 Kỹ năng

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

- Ứng dụng các thao tác, thủ tục và hàm vào các ví dụ đơn giản

3 Thái độ

- Nghiêm túc, chú ý nghe giảng

II Chuẩn bị

- SGK, Giáo án

III Tiến trình dạy học

1 Ổn định lớp

2 Kiểm tra bài cũ

3 Bài mới

- Kiểu dữ liệu chuẩn: Nguyên, thực, kí tự và logic

Tiết 27: Kiểu xâu (Tiết 1)

1 Khái niệm kiểu xâu trong NNLT Pascal

- Là dãy kí tự trong bảng mã ASCII, một kí tự

mỗi phần tử, được đặt trong hai dấu nháy đơn

VD: ‘Tin hoc’

‘Nguyen Van Ti’

- Độ dài xâu: Số lượng kí tự trong xâu đó

- Xâu rỗng: ‘’ (hai dấu nháy đơn liên tiếp)

2 Khai báo biến kiểu xâu trong Pascal:

Cp: Var <tên biến>:String[n];

Trong đó:

String: Tên chuẩn

n: Độ dài lớn nhất của xâu (<=255)

Vd:

Var hoten: string [7];

Với khai báo này:

- hoten là biến kiểu xâu

- Độ dài tối đa của xâu là 7

* Cách tham chiếu tới từng phần tử của xâu:

<tên biến xâu>[chỉ số]

- Những kiểu dữ liệu đã học là gì ?

Hoạt động 1: Tìm hiểu khái niệm xâu trong NNLT Pascal.

- Nêu khái niệm

- Hãy nêu ví dụ một vài xâu bất kỳ

- Yêu cầu học sinh xác định độ dài xâu trong ví

dụ trên

- Pascal cung cấp cho chúng ta các quy tắc, cách thức để xác định: Tên kiểu xâu, cách khai báo biến xâu, độ dài xâu, các phép toán thao tác với xâu và cách tham chiếu tới từng phần tử cuả xâu

Hoạt động 2: Giới thiệu cách khai báo biến xâu trong NNLT Pascal.

- Trong trường hợp không khai báo độ dài của xâu thì mặc định n = 255

- Hãy khai báo một biến kiểu xâu?

- Với khai báo này ta xác định được gì?

- Các kí tự trong xâu được đánh số thứ tự bắt đầu từ 1

Trang 2

VD: ‘Le dung’ thì:

hoten[1]= ‘l’; hoten[2]= ‘e’; hoten[5]=?;

3 Thao tác với xâu trong Pascal:

a Nhập giá trị, viết ra giá trị biến kiểu xâu:

*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>);

VD: Viết chương trình nhập vào 2 xâu và in ra

màn hình giá trị 2 xâu đó

- Lên bảng viết chương trình

b Phép ghép xâu:

- Kí hiệu: Dấu cộng +

- Ghép nhiều xâu thành một xâu

Vd: ‘Tin’+ ‘hoc’ Kết quả: ‘Tinhoc’

c Phép so sánh xâu:

- Các phép so sánh: =,<>,<,>,<=,>=

- Quy tắc so sánh:

 a=b nếu chúng hoàn toàn giống nhau

 a < b nếu độ dài của b lớn hơn và a là đoạn

đầu của b

 a > b nếu kí tự đầu tiên khác nhau giữa

chúng kể từ trái sang trong xâu a có mã

ASCII lớn hơn

Vd: ‘abcd’>’aBcd’

‘Tin hoc’ < ‘Tinhoc’

Bài tập: Viết CT nhập vào họ đệm và tên của học

sinh In ra màn hình họvà tên của học sinh đó

- H/S: Lên bảng làm

d Hàm LENGTH (s):

Trong đó: s: Kiểu xâu

- Cho giá trị nguyên là độ dài thực sự của xâu

vd: s:= ‘TIN HOC’

n:=Length (s) n=7

- Cần so sánh tên của các học sinh với nhau

e Hàm COPY (S, m, n):

Trong đó: S: Kiểu xâu

m, n: Kiểu nguyên

- Lấy xâu con trong xâu S bắt đầu từ vị trí m gồm

n ký tự liên tiếp

vd: S:= ‘MON TIN HOC’

Copy (S, 5, 7)= ‘TIN HỌC’

Copy (S, 15, 5) = ‘’

f Hàm POS (S1, S2):

- Cho giá trị nguyên là vị trí xuất hiện đầu tiên

của xâu S1 trong xâu S2

- Cách tham chiếu tới từng phần tử của xâu tương tự như với mảng một chiều Yêu cầu HS nhắc lại

- hoten[5] là bao nhiêu?

Hoạt động 3: Tìm hiểu các thao tác với xâu

- Đối với dữ liệu chuẩn, sử dụng thủ tục nào để nhập giá trị?

- Input, output của bài toán là gì?

- Gọi học sinh nhận xét bài của bạn

- Sửa lại bài của học sinh Nhận xét

- Trong Pascal, để thực hiện ghép nhiều xâu thành một xâu sử dụng dấu +

- GV: Kết quả của ví dụ trên là gì?

- Trong danh sách học sinh của lớp chúng ta, các tên được sắp xếp theo trật tự A, B, C, …Để sắp xếp thì phải có thao tác so sánh

- Có những phép so sánh nào?

- Hãy so sánh các xâu kí tự sau đây?

- Xác định input, output của bài toán?

- GV: Nhận xét

- Để biết được độ dài thực sự của xâu, Pascal sử dụng hàm Length

- Với ví dụ sau, hãy cho biết kết quả của hàm Length (s) là bao nhiêu?

- Với danh sách học sinh được sắp xếp theo thứ

tự Để thực hiện công việc này?

- Với ví dụ như trên, hãy cho biết giá trị của hàm bằng bao nhiêu?

Trang 3

- Nếu xâu S1 không có trong xâu S2 thì cho kết

quả là 0

Vd:

S1:= ‘HOC’

S2:= ‘MON TIN HOC’

Pos (‘ ’, S2) = 4

Với S1:= ‘HOA’

thì Pos (S1, S2) = 0

g Hàm UPCASE (Ch):

- Cho chữ cái in hoa tương ứng với chữ cái Ch

Trong đó Ch: kiểu kí tự

Ch:= ‘a’

Upcase(Ch) = 'A'

h Thủ tục DELETE (S, m, n):

Trong đó: S: Kiểu xâu

m, n: Kiểu nguyên

- Xoá trong xâu S bắt đầu từ vị trí m, n ký tự liên

tiếp

vd: S:= ‘MON TIN HOC’

Delete (S, 4, 4)

 Kết quả:

Giá trị của s là ‘MON HOC’

k Thủ tục INSERT (S1, S2, m):

Trong đó: S1, S2: Kiểu xâu

m: Kiểu nguyên

- Chèn xâu S1 vào xâu S2 bắt đầu từ vị trí m

vd: S1:= ‘TIN’

S2:= ‘MON HOC’

Insert (S1, S2, 4)

 Kết quả: Giá trị của s2 là

‘MONTIN HOC’

Insert (S1, S2, 24)

 Kết quả: Giá trị của s2 là

‘MONTIN HOC’

4 Một số ví dụ

Ví dụ 1:

Viết chương trình nhập từ bàn phím xâu kí tự S

In ra màn hình xâu đó sau khi được biến đổi

thành xâu in hoa

Input: Xâu S

Output: Xâu S đã được biến đổi thành xâu

in hoa

Khai báo: S: Kiểu string;

i: Kiểu byte;

Ví dụ 2:

Viết chương trình nhập từ bàn phím xâu kí tự S

In ra màn hình xâu thu được từ nó bởi việc loại

bỏ các dấu cách nếu có

Input: Xâu S

- Ví dụ sau khi dùng các hàm sau thì cho kết quả là gì?

- Upcase (S) với S là biến xâu là không hợp lệ

- Ví dụ với một xâu mà giữa 2 từ có nhiều dấu cách thì xấu vậy thì phải làm sao?

- Kết quả của thủ tục này là gì?

- Trong trường hợp viết tên thiếu thì phải làm gì?

* Chú ý: Với giá trị m lớn hơn độ dài xâu thì

thủ tục Insert luôn cho giá trị chính là xâu đó

- Kết quả là gì?

- Hãy xác định các giá trị của bài toán

- Trình chiếu chương trình trên Pascal

- Kiểm tra sự tồn tại của dấu cách trong xâu S,

sủ dụng hàm nào?

 Pos (‘ ’, S)

a Trong khi Pos (‘ ’, S)<>0 thì xóa một kí tự

Trang 4

Output: Xõu S sau khi loại bỏ dấu cỏch

Khai bỏo S: Kiểu string

ở vị trớ pos (‘ ’, S) Sử dụng thủ tục gỡ?

 Delete (S, pos (‘ ’,S), 1)

- GV: Chiếu chương trỡnh

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

1.- Khai báo biến: VAR tên_biến: STRING[độ dài lớn nhất của xâu];

- Nhập xuất giá trị cho biến xâu: read/readln(); write/writeln();

- Tham chiếu đến từng kí tự trong xâu: tên_biến[chỉ số]

- Phép ghép xâu: Kí hiệu là: +, Được sử dụng để ghép nhiều xâu thành một xâu

- Các phép so sánh: =, <>, >, <, <=, >=: thực hiện việc so sánh hai xâu

2 Những hàm và thủ tục liên quan đến xâu

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

- Giải bài tập số 10 trang 80

- Viết chương trình nhập một xâu In ra màn hình sỗ từ có trong xâu

- Xem phần nội dung của bài thực hành số 5, sách giáo khoa, trang 73

- Chuẩn bị một số bài tập để thực hành

Ngày đăng: 01/04/2021, 21:40

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w