Xem mẫu

TIN HỌC - HK II
Câu 1: Khái niệm; cách khai báo mảng một chiều.
- KN: Mảng một chiều là dãy hữu hạn các phần tử cùng kiểu.
- KB: +Trtiếp: var : array [kiểu chỉ số] of ;
+ Gitiếp: type = array [kiểu chỉ số] of ;
var : ;
Câu 2: Khái niệm, cách khai báo xâu. Các thao tác sử dụng xâu. Các hàm,
thủ tục xử lí xâu.
- KN: Xâu là dãy các kí tự trong bộ mã ASCII.
- KB:
var : string [độ dài lớn nhất của xâu];
- Các thao tác xử lí:
+ Phép ghép xâu, KH: (+), 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 so sánh 2 xâu
theo qui tắc:
 Xâu A lớn hơn xâu B nếu kí tự đầu tiên khác nhau giữa chúng kể từ trái
sang phải trong xâu A có mã ASCII lớn hơn.
 Nếu A và B là các xâu có độ dài khác nhau và A là đoạn đầu của B thì A nhỏ
hơn B.
- Các hàm và thủ tục:
 Thủ tục delete(st, pos, n): xóa n ký tự trong xâu st kể từ vị trí pos.
 Thủ tục insert(s1, s2, pos): Thủ tục cho kết quả bằng cách chèn xâu s1 vào
xâu s2 tại vị trí pos, những ký tự đứng sau pos sẽ được dời về phía sau của
xâu ký tự s1.
 Hàm copy(st, pos, n): sao chép trong xâu st, n ký tự tại vị trí pos.
 Hàm length(st): cho độ dài thực của xâu ký tự.
 Hàm pos(s1,s2): hàm cho vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2.
Hàm upcase(ch): cho chữ cái in hoa ứng với chữ cái trong ch.
Câu 3: Khái niệm, cách khai báo biến tệp. Các thao tác với tệp. Sơ đồ
mối quan hệ.
- KN: Tệp là tập hợp các thông tin ghi trên bộ nhớ ngoài, tạo thành 1 đơn vị
lưu trữ do HĐH quản lí.
- KB: var : text;

- Thao tác:
+ Gọi tên: assign(, );
+ Mở tệp để
đọc dữ liệu: reset();
ghi dữ liệu: rewrite();
+ Đọc/ ghi tệp văn bản:
đọc: read(ln)(, );
ghi: write(ln)(, );
* Một số hàm chuẩn khi đọc/ ghi tệp văn bản:
- Hàm eof() trả về giá trị true nếu con trỏ tệp đang chỉ tới
cuối tệp.
- Hàm eoln() trả về giá trị true nếu con trỏ tệp đang chỉ tới
cuối dòng.
Đóng tệp: close();
- Sơ đồ MQH:
assign(, );
rewrite();

reset();

write(ln)(, );

read(ln)(, );

close();
Câu 4: Phương pháp lập trình có cấu trúc, chương trình có cấu trúc,
chương trình con.
Phân loại, nêu cấu trúc chương trình con. Phân loại hàm và thủ tục.
- Lập trình có cấu trúc: khi lập trình để giải bài toán trên máy tính có thể
phân chia chương trình (gọi là chương trình chính) thành các khối (môđun),
mỗi khối bao gồm các lệnh giải một bài toán con nào đó. Mỗi khối lệnh sẽ
được xây dựng thành một chương trình con. Sau đó, chương trình chính sẽ
được xây dựng từ các chương trình con này. Chương trình con cũng có thể
được xây dựng từ nhiều chương trình con khác.
- Chương trình có cấu trúc được xây dựng như vậy.
- Chương trình con là một dãy lệnh mô tả một số thao tác nhất định và có
thể được thực hiện (được gọi) từ nhiều vị trí trong chương trình.

- Phân loại: 2 loại
Hàm (Function)
là chương trình con thực hiện một
số thao tác nào đó và trả về một
giá trị qua tên của nó.
VD: Sin(x), Cos(x), Sqrt(x)…
Cấu trúc chương trình con:

Thủ tục (Procedure)
là chương trình con thực hiện một
số thao tác nào đó nhưng không trả
về một giá trị nào qua tên của nó.
VD: Writeln, Readln, Delete, …


[]

· Phần đầu: cấu trúc chương trình con tương tự chương trình chính,
nhưng nhất thiết phải có phần đầu để khai báo tên, nếu là Hàm thì phải
có khai báo kiểu dữ liệu trả về.
· Phần khai báo: có thể khai báo cho dữ liệu vào và ra, các hằng được
sử dụng trong chương trình con.
· Phần thân: là các dãy lệnh được thưc hiện trong chương trình con từ
dữ liệu vào và được kết quả như mong muốn.
Câu5:
var f1, f2, f3, : text;
x: integer;
begin
assign(f1, ‘songuyen.txt’);
reset(f1);
assign(f2, ‘chan.txt’);
rewrite(f2);
assign(f3, ‘le.txt’);
rewrite(f3);
while not eof(f1) do
begin
read(f1, x);
if (x>0) and (x mod 2 = 0) then write(f2, x);
if (x>0) and (x mod 2 = 1) then write(f3, x);
end;
close(f10; close(f2); close(f3);
end.

Câu 6:
var s :string;
f: text;
i,k : byte;
begin
assign(f, ‘baitap.txt’);
reset(f);
while not eof(f) do
begin
read(f, s);
k := length(s);
for i := k downto 1 do write(s[i]);
write ('Xau dao nguoc la : ', s);
readln
end;
close(f)
end.
Câu 7:
var i, k: byte;
a, b: string;
begin
write(‘nhap xau: ‘);
readln(a);
k:= length(a);
b:= ‘ ‘;
for i:= 1 to k do
if a[i]’ ‘ then b:=b+a[i];
writeln(‘Ket qua: ‘,b);
readln
end.

nguon tai.lieu . vn