Tải bản đầy đủ (.ppt) (15 trang)

hội thi giáo viên dạy giỏi thpt tỉnh đồng tháp

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 (476.65 KB, 15 trang )



Câu hỏi: Hãy điền vào chỗ trống những câu lệnh thích
hợp để được một chương trình nhập và xuất xâu A hoàn
chỉnh?
Var
A: String[25];
Begin
Write(‘Nhap xau A: ’);
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Write(‘Xau A la: ‘);
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Readln;
End.

Var
A: String[25];
Begin
Write(‘Nhap xau A: ’);
Readln(A);
Write(‘Xau A la: ‘);
Write(A);
Readln;
End.

Bµi 12 :

st2 :=
Xâu st3 = st1 + st2
đúng hay sai? Vì sao?
st1 :=


‘Truong
st3 := ‘Truong THPT TP Cao Lanh’;
Trong ngôn ngữ lập
trình Pascal thủ tục
chèn có cú pháp như
thế nào?
Giả sử ta có:
TP Cao Lanh’;
‘ THPT’ ;THPT

Bài 12: KIỂU XÂU (tt) (STRING TYPE)
c. Một số thủ tục và hàm trong Pascal:
Chèn xâu s1 vào s2 bắt đầu từ vị trí vt.
st1 := ‘ Nam’;
Ví dụ:
 KQ: ‘Phuong Nam Bac’
Insert(st1, st2, vt);
Insert(s1, s2, vt):
Insert(st1, st2, 7);
st2 := ‘Phuong Bac’;
Insert(s1, s2, vt):

Bài 12: KIỂU XÂU (tt) (STRING TYPE)
Hãy điền các đối số thích hợp vào dấu chấm hỏi (?) để
được cú pháp của các thủ tục và hàm. Nêu chức năng?
Lấy ví dụ minh họa?
NHÓM THỦ TỤC / HÀM CHỨC NĂNG CỦA THỦ TỤC / HÀM
Insert (s1,s2,vt); Chèn xâu s1 vào xâu s2 bắt đầu từ vị trí vt.
1 Delete (st,vt,n); Xóa n kí tự của xâu st bắt đầu từ vị trí vt.
2 Copy (st,vt,n);

Tạo xâu mới gồm n kí tự liên tiếp bắt đầu từ
vị trí vt của xâu st.
3 Length (st); Trả về giá trị là độ dài của xâu st.
4, 5 Pos (s1,s2);
Trả về giá trị là vị trí xuất hiện đầu tiên của
xâu s1 trong xâu s2.
6 Upcase (ch); Cho chữ cái in hoa ứng với chữ cái trong ch.
?
?
?
?
?
c. Một số thủ tục và hàm trong Pascal:

Cấu trúc chung của
một chương trình gồm
các phần nào?
[<Phần khai báo>]
<Phần thân chương trình>

Bài 12: KIỂU XÂU (tt) (STRING TYPE)
3. Một số ví dụ:
 Ví dụ 1: Viết chương trình nhập họ tên của hai người vào hai biến xâu
và đưa ra màn hình xâu dài hơn, nếu bằng nhau thì đưa ra xâu nhập sau.
Input: Nhập họ tên của hai người vào hai biến xâu.
Output: Đưa ra màn hình xâu dài hơn, nếu bằng thì đưa ra xâu nhập sau.
Sử dụng thủ tục Read() hoặc Readln() để nhập giá trị cho biến xâu.
Sử dụng hàm Length(st) để lấy độ dài của hai xâu.
Sử dụng câu lệnh If… Then… Else


Bài 12: KIỂU XÂU (tt) (STRING TYPE)
3. Một số ví dụ:
 Ví dụ 1: Viết chương trình nhập họ tên của hai người vào hai biến xâu
và đưa ra màn hình xâu dài hơn, nếu bằng nhau thì đưa ra xâu nhập sau.
Program VD1;
Var
a, b: String;
Begin
Write(‘Nhap ho ten thu nhat: ’);
Readln(a);
Write(‘Nhap ho ten thu hai: ’);
Readln(b);
If Length(a) > Length(b) Then
Writeln(a)
Else
Writeln(b);
Readln;
End.

Khai báo hai biến xâu a, b

Nhập giá trị cho hai xâu a, b

Xử lý xâu:
Nếu độ dài của xâu a lớn
hơn xâu b thì đưa ra màn hình
xâu a, ngược lại đưa ra màn
hình xâu b.

Bài 12: KIỂU XÂU (tt) (STRING TYPE)

3. Một số ví dụ:
 Ví dụ 2: Viết chương trình nhập một xâu từ bàn phím và đưa ra màn
hình xâu thu được từ nó sau khi loại bỏ các dấu cách nếu có.

Khai báo hai biến xâu a, b

Nhập giá trị cho hai xâu a

Xử lý xâu:
Lần lượt duyệt qua tất cả các
phần tử của xâu a. Nếu phần tử
được duyệt khác dấu cách thì bổ
sung vào xâu b.
Program VD2;
Var
i,k: byte;
a, b: String;
Begin
Write(‘Nhap xau: ’);
Readln(a);
b:= ‘’;
k:= Length(a);
For i:= 1 To k Do
If a[i] <> ‘ ’ Then b:= b + a[i];
Writeln(‘Ket qua: ’, b);
Readln;
End.

Câu 1:
Cho:

st := ‘300kitu’;
Sau khi thực hiện thủ tục hoặc hàm sau thì kết quả trả về
là:
a. Length(st);
b. Delete(st,4,4);
c. Copy(st, 4, 4);
d. Pos(‘00’,st);
BÀI TẬP:

7

‘300’

‘kitu’

2

Câu 2:
Hãy sắp xếp lại các mảnh ghép để được một chương trình
hoàn chỉnh: “đổi xâu kí tự thường thành xâu kí tự in hoa”.
BÀI TẬP:
Program DOI_CHU;
Var
i: byte;
st: String;
Begin
Write(‘Nhap xau: ’);
Readln(st);
For i:= 1 To Length(st) Do
st[i] := Upcase(st[i]);

Writeln(‘Ket qua: ’, st);
Readln;
End.

VỀ NHÀ:
1. Các em về nhà học bài và xem trước bài tập thực
hành 5 trong SGK trang 73.
2. Giải bài tập 10 trong SGK trang 80.

×