Giáo trình tin học đại cơng
ngôn ngữ lập trình pascal
Chơng 5. Giới thiệu chung về ngôn ngữ Pascal
5.1. Mở đầu.
5.1.1. Giới thiệu về Pascal - Turbo Pascal : Pascal là một ngôn ngữ lập
trình cấp cao do Niklaus Wirth, giáo s điện toán trờng đại học Kỹ thuật Zurich
(Thụy sĩ) thiết kế và công bố vào năm 1971 và đặt tên là Pascal để tởng niệm
nhà Toán học và Triết học nổi tiếng Blaise Pascal (ngời Pháp).
Lúc đầu mục đích của Wirth thiết kế Pascal là để giảng dạy lập trình, do
Pascal có các đặc điểm :
* Ngữ pháp, ngữ nghĩa đơn giản và có tính logic.
* Cấu trúc chơng trình rõ ràng, dễ hiểu (thể hiện t duy lập trình cấu trúc).
* Dễ sửa chữa và cải tiến.
Trong quá trình phát triển, Pascal đã phát huy đợc u điểm của mình và tỏ ra
hơn hẳn nhiều ngôn ngữ cấp cao khác. Pascal đã trở thành một ngôn ngữ mạnh
đợc ứng dụng trong nhiều lĩnh vực khác nhau. Các tổ chức và công ty chuyên về
máy tính dựa trên Pascal chuẩn đã phát triển thêm và tạo ra các chơng trình dịch
ngôn ngữ Pascal với nhiều phần thêm bớt khác nhau.
Ví dụ :
- TURBO PASCAL của hãng Borland (Mỹ).
- QUICK PASCAL của hãng Microsoft.
- UCSD PASCAL (University of California at San Diego).
- ANSI PASCAL (American National Standard Institut).
...
So với nhiều sản phẩm Pascal của nhiều tổ chức và hãng khác nhau xuất
bản, Turbo Pascal đã tỏ ra có nhiều u điểm nhất và hiện nay đợc xem nh là một
trong những ngôn ngữ lập trình cấp cao phổ biến nhất trên thế giới đợc sử dụng
trong lĩnh vực giảng dạy và lập trình chuyên nghiệp.
Chỉ trong vòng mấy năm Turbo Pascal đợc cải tiến qua nhiều phiên bản :
1.0, 2.0, 3.0, 4.0, 5.0, 5.5 (1989), 6.0 (1990), 7.0 (1992).
Để dánh giá những đóng góp quan trọng trong lĩnh vực Tin học, đặc biệt là
Từ khoá chung : PROGRAM, BEGIN, END, PROCEDURE, FUNCTION.
Từ khoá để khai báo : CONST, VAR, TYPE, ARRAY, STRING, RECORD,
SET, FILE OF, LABEL.
Từ khoá của lệnh lựa chọn : IF ... THEN ... ELSE, CASE ... OF.
Từ khoá của lệnh lặp : FOR ... TO ... DO, FOR ... DOWNTO ... DO, WHILE ...
DO, REPEAT ... UNTIL.
2
Giáo trình tin học đại cơng
Từ khoá điều khiển : WITH, GOTO, EXIT.
Từ khoá toán tử : AND, OR, NOT, IN, DIV, MOD.
Chú ý : Turbo Pascal không phân biệt ký tự in thờng (lower case char) hay in
hoa (upper case char). Chẳng hạn, các cách viết sau có ý nghĩa hoàn toàn nh
nhau : BEGIN, begin, Begin, beGIN, ...
5.2.3. Tên (identifier) : Tên là một dãy ký tự đợc tạo thành từ các chữ cái,
chữ số và dấu nối (_) dùng để đặt tên cho các đại lợng trong chơng trình nh tên
hằng, tên kiểu dữ liệu, tên biến, tên mảng, tên hàm, tên chơng trình, ...
Kí tự đầu tiên của tên không đợc là chữ số.
Chiều dài của tên tối đa là 127 ký tự.
Tên không đợc trùng với từ khoá.
Ví dụ :
+ Tên đúng : PT_BAC_2, DELTA, a_1, _b
+ Tên sai :
PT BAC2 (có ký tự trống)
3ABC (ký tự đầu tiên là chữ số)
g(x) (sử dụng dấu ( ))
label (trùng với từ khoá)
x-1 (dùng dấu trừ)
Chú ý : Thông thờng tên nên đặt ngắn gọn và có tính gợi nhớ.
5.2.4. Tên chuẩn : Trong Turbo Pascal có một số tên đã đợc đặt sẵn rồi, gọi là
tên chuẩn. Sau đây là một số tên chuẩn :
END.
Dấu chấm báo kết thúc chơng trình.
Giáo trình tin học đại cơng
Trong cấu trúc tổng quát của chơng trình Turbo Pascal :
- Phần 1 : Chiếm một dòng và có thể có hay không.
- Phần 2 : Tuỳ theo chơng trình cụ thể mà các khai báo có thể có hay không và có
thể lặp lại một số lần.
- Phần 3 : Bắt buộc phải có đối với mọi chơng trình.
Lời giải thích : Turbo Pascal cho phép ngời lập trình có thể đa vào văn bản
chơng trình các lời bình luận, giải thích, ghi chú để làm cho chơng trình dễ
đọc, dễ hiểu hơn mà không ảnh hởng đến sự thực hiện của chơng trình. Các
lời giải thích đợc đặt giữa hai dấu { } hoặc giữa hai cụm dấu (* *) và có thể
viết trên một dòng hay nhiều dòng.
Dấu chấm phẩy ( ; ) : Dấu chấm phẩy dùng để ngăn cách các câu lệnh của
Turbo Pascal (không phải là dấu kết thúc lệnh). Nếu dấu chấm phẩy đứng
ngay trớc từ khoá END có thể bỏ. Chẳng hạn, có thể viết :
Begin
Write('Turbo Pascal');
Readln
End.
Câu lệnh : Một chơng trình gồm các câu lệnh, mỗi câu lệnh thực hiện một
công việc nào đó. Trên một dòng có thể viết một hoặc nhiều câu lệnh. Một
lệnh, nếu dài, thì có thể viết trên hai hay nhiều dòng, chẳng hạn :
Writeln('Phơng trình có hai nghiệm là : x1 = ', x1:8:2,
' và x2 = ', x2:8:2);
5.4. Các bớc để chạy một chơng trình Turbo Pascal.
5.4.1. Ví dụ 1 : Tạo lập và cho thực hiện chơng trình in ra màn hình hai dòng
thông báo :
-------------- TURBO PASCAL 7.0 --------------
XIN CHAO CAC BAN YEU THICH TIN HOC
File/ Save as, sau đó nhập vào tên tập tin mới cùng đờng dẫn và gõ Enter.
B ớc 4 : Biên dịch và thực hiện chơng trình
Gõ Ctrl-F9. Khi dịch máy sẽ kiểm tra ngữ pháp của từng lệnh, gặp lệnh sai
hoặc nhập sai máy dừng lại, trên mà hình có thông báo nguyên nhân sai của lỗi,
Ngời lập trình phải tự mình sửa lỗi, rồi gõ Ctrl-F9 để chạy tiếp. Lặp lại quá
trình này cho đến khi sửa hết lỗi.
Ghi chú :
Nếu sau khi chạy, máy không báo lỗi nhng lại cho kết quả sai thì ta phải tự tìm lỗi
vì đây là lỗi logic, lỗi về thuật toán máy không phát hiện đợc. Chẳng hạn, khi giải
phơng trình bậc hai ta gán nhầm giá trị cho biệt số : delta := b*b - 2*a*c.
Sau khi biên dịch và thực hiện chơng trình xong mà không thấy kết quả chơng trình
trên màn hình thì gõ Alt-F5 để hiện kết quả, xem xong gõ phím bất kỳ để trở lại
màn hình ban đầu.
Nếu chơng trình chạy đúng thì gõ F2 để lu nó lên đĩa lần cuối. Bây giờ có thể lặp
lại từ bớc 2 để soạn một chơng trình mới.
6
Open (F3)
New
Save F2
Save as
Save all
Change dir
Print
Get Info
Dos Shell
Exit
Giáo trình tin học đại cơng
Khi chơng trình đã chạy thông suốt, muốn dịch chơng trình ra tập tin trên đĩa có
phần mở rộng EXE để sau này có thể chạy độc lập không phải vào môi trờng của
Turbo Pascal, thì thực hiện bớc 5 và bớc 6.
Readln
end.
Kết quả thực hiện chơng trình :
7
Nhập bán kính R = 3.5
Diện tích S = 38.4845
Chu vi P = 21.9911
Phần 3- Ngôn ngữ lập trình Pascal
5.5. Các thao tác soạn thảo cơ bản với Turbo Pascal.
Phím lệnh soạn thảo thông dụng
Đa con trỏ về đầu dòng Home
Đa con trỏ về cuối dòng End
Đa con trỏ lên một trang Page Up
Đa con trỏ xuống một trang Page Down
Xóa kí tự ngay tại vị trí con trỏ Del
Xóa kí tự bên trái con trỏ Back Space
Xóa một dòng tại vị trí con trỏ Ctrl-Y
Xóa từ con trỏ đến cuối dòng Ctrl-Q Y
Chuyển con trỏ sang cửa sổ mới Alt - số hiệu cửa sổ
Thao tác trên khối
Đánh dấu khối Shift + các phím mũi tên
Sao chép khối Ctrl-K C
Di chuyển khối Ctrl-K V
Xóa khối Ctrl-K Y
Che/hiện lại khối đã đánh dấu Ctrl-K H
Câu hỏi - Bài tập
[5.1] Tập ký tự cơ bản của ngôn ngữ Turbo Pascal.
[5.2] Từ khoá là gì ? Tại sao nên học thuộc các từ khoá của Turbo Pascal.
[5.3] Phân biệt sự khác nhau giữa từ khoá và tên chuẩn.
[5.4] Tên là gì ? Các tên sau đây tên nào không đúng trong Turbo Pascal ? Tại
(data type)
Kiểu có
cấu trúc
Kiểu có
cấu trúc
Kiểu đơn
giản
Kiểu đơn
giản
Chuẩn
Do người lập trình
định nghĩa
Kiểu mảng
Kiểu tập hợp
Kiểu bản ghi
Kiểu tập tin
Phần 3- Ngôn ngữ lập trình Pascal
Chú ý :
Riêng chuỗi ký tự (STRING) là một kiểu dữ liệu đặc biệt, vừa có tính đơn
giản vừa có tính cấu trúc. Mỗi chuỗi có thể xem là một giá trị, nhng cũng có
thể xem là một mảng các giá trị kiểu ký tự. Vì vậy, việc sử dụng chuỗi cũng
có hai mức khác nhau : mức đơn giản và mức có cấu trúc.
Các kiểu có dấu (*) gọi là kiểu vô hớng đếm đợc (hay có thứ tự).
Dới đây sẽ lần lợt trình bày 5 kiểu dữ liệu đơn giản thông dụng : kiểu logic,
kiểu nguyên, kiểu thực, kiểu ký tự và chuỗi.
6.2. Các kiểu dữ liệu đơn giản.
6.2.1. Kiểu logic (boolean type) :
- Chỉ có hai giá trị đợc biểu thị qua hai hằng chuẩn là TRUE (đúng),
FALSE (sai).
- Một giá trị logic đợc lu trử trong 1 byte.
True
True
False
False
True
True
False
Giáo trình tin học đại cơng
Kiểu số nguyên thuộc tập Z. Có 5 kiểu số nguyên : Integer, Byte, Word,
ShortInt và LongInt. Dới đây là bảng chi tiết về tên gọi, phạm vi giá trị và
số byte dùng để lu trữ trong bộ nhớ của từng kiểu :
Tên kiểu Phạm vi giá trị số byte
ShortInt
Byte
Integer
Word
LongInt
-128 ..127
0..255
-32768..32767
0..65535
-2147483648..2147483647
1
1
2
2
4
Các phép tính số học trên số nguyên :
Phép cộng và trừ : Ký hiệu + và - nh thờng lệ.
Phép nhân : Ký hiệu bằng dấu *. Chẳng hạn : 3*2 cho kết quả là 6.
Số tờ 1 đ = (Số tiền d) mod 5 = 7 mod 5 = 2
Program Vidu_2 ;
Uses Crt;
Var N, st10 : LongInt;
st5, st1, sodu : Byte;
Begin
Write('Nhập số tiền N : ');Readln(N);
st10 := N div 10;
sodu := N mod 10; {tính phần d}
st5 := sodu div 5;
st1 := sodu mod 5;
Writeln('Số tờ 10 đồng = ',st10);
Writeln('Số tờ 5 đồng = ',st5);
Writeln('Số tờ 1 đồng = ',st1);
End.
6.2.3. Kiểu số thực :
Kiểu Real và các kiểu mở rộng : Kiểu Real là kiểu số thực thông dụng nhất
dùng để biểu diễn các số thực x có trị tuyệt đối nằm trong khoảng từ 2.9*10
-39
đến 1.7*10
38
. Nếu
x
> 1.7*10
38
thì không biểu diễn x trong máy đợc, còn
nếu
x
< 2.9*10
-39
6
4
8
10
8
Chú ý : Turbo Pascal thờng chỉ làm việc với một kiểu Real. Muốn dùng 4
kiểu thực còn lại, phải chuyển sang mode 8087 bằng cách viết chỉ thị {$N+}
ở ngay đầu chơng trình.
Cách viết một số thực : Có hai cách biểu diễn các số thực :
12
Giáo trình tin học đại cơng
Cách 1 : Viết nh một số thực bình thờng trong toán học, trong đó dấu phẩy
thập phân đợc thay bằng dấu chấm thập phân. Chẳng hạn : 2.12; 4.0;
-125.09; +235.55
Cách 2 : Viết số dới dạng khoa học.
2.345E+1 (có giá trị là 2.345*10
1
= 23.45)
123.456E-4 (có giá trị là 123.456*10
-4
= 0.0123456)
-52.4E2 (có giá trị là -52.4*10
2
= -5240.0)
Trong dạng này, số gồm có hai phần : phần đứng trớc E gọi là phần
định trị, đợc viết theo cách 1; phần đứng sau E gọi là phần bậc, gồm dấu
cộng hoặc trừ, tiếp đến là một số nguyên.
Số viết theo cách 1 còn gọi là số có dấu chấm thập phân cố định, số
viết theo cách 2 còn gọi là số có dấu chấm thập phân di động hay số dạng
khoa học.
Sin(x), Cos(x), Artan(x): tính sinx, cosx
và arctgx.
Ln(x) = log
e
x (x > 0), Exp(x) = e
x
.
TRUNC,
ROUND
nguyên
hay thực
nguyên
Trunc(x) : cắt bỏ phần lẻ thập phân của x
nếu có. Trunc(4.86) = 4; Trunc(-3.2) =-3.
Round(x) : cho số nguyên gần x nhất.
Round(-23.68) = -24; Round(1.5) = 2.
INT,
FRAC
nguyên
hay thực
thực
Int(x) : cho số thực bằng phần nguyên của
x. Int(12.57) = 12.0
Frac(x) : cho số thực bằng phần lẻ của x.
Frac(12.57) = 0.57
SUCC,
FRED
nguyên nguyên
Succ(n) = n+1,
Pred(n) = n-1.
b
Lu ý : Các ký tự có mã từ 0 đến 31 gọi là các ký tự điều khiển, không in ra đợc,
đợc dùng để điều khiển các thiết bị ngoại vi. Chẳng hạn, ký tự có mã là 7 (bell)
dùng để tạo một tiếng kêu bip; ký tự có mã 13 dùng để chuyển con trỏ màn
hình xuống đầu dòng dới, ...
Mỗi ký tự trong bảng mã ASCII gọi là một hằng ký tự, chiếm độ dài 1 byte,
và khi viết trong Turbo Pascal phải đợc đặt trong cặp nháy đơn, chẳng hạn:
A, 2, $, ...
Phép toán : Chỉ có phép toán so sánh. Ký tự có mã nhỏ hơn thì nhỏ hơn. Tức
là : 0 < 1 < ... < A < B < ... < a < b < ...
Các hàm liên quan đến ký tự :
Hàm UPCASE(ch) : Đổi ký tự ch thành ký tự hoa. Chẳng hạn :
UpCase(a) = A; UpCase(B) = B.
Hàm PRED(ch) : Cho ký tự đứng ngay trớc ký tự ch trong bảng mã.
Chẳng hạn : Pred(b) = a.
Hàm SUCC(ch) : Cho ký tự đứng ngay sau ký tự ch trong bảng mã.
Chẳng hạn : Succ(b) = c.
Hàm ORD(ch) : Cho mã của ký tự ch. Chẳng hạn : Ord(A) = 65;
Ord(a) = 97.
14
Giáo trình tin học đại cơng
Hàm CHR(k), trong đó đối số k nguyên, 0 k 255 : Cho ký tự có mã
bằng k. Chẳng hạn : Chr(65) = A; Chr(97) = a.
Ghi chú :
Có một số ký tự không có trên bàn phím, để viết chúng lên màn hình ta phải
dùng lệnh Write và hàm CHR. Chẳng hạn :
- Lệnh Write(Chr(242)) : in ra ký tự
- Lệnh Write(Chr(240)) : in ra ký tự
- Lệnh Write(Chr(7)) hay Write(#7) : phát ra một tiếng bip.
e) Int(12.5) f) 4 >=5 g) Round(12.4) h) 15/3
[6.7] Trong các phép toán dới đây phép nào có thể thực hiện đợc trong Turbo
Pacal và kết quả của phép toán thuộc kiểu dữ liệu nào ? Trong trờng hợp
không thực hiện đợc hãy giải thích tại sao ?
a) 14/10 + Ord(a)
b) Sin(0.5) + 12
c) Abs(2) + 25.7
d) Odd(12) + Ord(12)
[6.8] Viết chơng trình nhập vào từ bàn phím một số nguyên k, 0 k 255, in
ra màn hình ký tự có mã ASCII là k.
[6.9] Viết chơng trình nhập vào từ bàn phím họ tên, năm sinh của một học
sinh và đa các dữ liệu đó ra màn hình.
[6.10] Viết chơng trình tính diện tích mặt cầu và thể tích của hình cầu. Biết bán
kính R nhập vào từ bàn phím.
Chơng 7. Hằng, biến, kiểu, biểu thức, câu lệnh, lệnh gán
7.1. Hằng.
7.1.1. Khái niệm về hằng (constant) : Hằng là đại lợng có giá trị không thay
đổi trong suốt quá trình thực hiện chơng trình.
7.1.2. Cách khai báo hằng :
trong đó Tên_hằng là tự đặt, theo đúng quy tắc của một tên, còn giá_trị có thể
là một hằng hoặc một biểu thức mà các toán hạng đều là hằng.
Ví dụ 1 :
Const
max = 150; {hằng nguyên}
L = False; {hằng logic}
A = (5*7)/4; {hằng thực}
16
CONST
Tên_hằng = giá_trị;
Giáo trình tin học đại cơng
dài 7 byte. Biến String khai báo tối đa là String[255].
Một biến String đợc cấp một số byte bằng độ dài của nó cộng thêm 1. Byte đầu
tiên dùng để ghi số ký tự đang đợc lu trữ, mỗi byte còn lại chứa một ký tự.
Có thể vừa khai báo vừa khởi đầu (gán giá trị) cho các biến theo cách sau :
Const
x = 25.0;
y : Real = -5.23;
Ho_ten : String[25] = Le Hung;
Chú ý phân biệt x và y : x là hằng thực, y là biến thực. Trong chơng trình có thể
thay đổi giá trị của y nhng không thể thay đổi giá trị của x.
7.3. Định nghĩa kiểu dữ liệu.
Ngoài các kiểu dữ liệu đã đợc định nghĩa sẵn nh : Real, Integer, Byte, Char,
Boolean, ... Turbo Pascal còn cho phép ta định nghĩa các kiểu dữ liệu khác từ
các kiểu căn bản đã có sẵn theo quy tắc xây dựng của Turbo Pascal. Kiểu dữ
liệu mới đợc định nghĩa bởi từ khoá TYPE nh sau :
Sau đó có thể khai báo các biến thuộc kiểu dữ liệu mới này.
Ví dụ 3 :
Type songuyen = Integer;
tuoi_tho = 1..100; {miền giá trị của tuoi_tho từ 1 đến 100}
color = (Red, Blue, Green);
Sau đó ta có quyền sử dụng các kiểu trên để khai báo, chẳng hạn :
Var i, j : songuyen;
tuoi : tuoi_tho; mau : color;
18
TYPE
tên_kiểu = mô_tả_ kiểu;
Giáo trình tin học đại cơng
7.4. Biểu thức.
7.4.1. Định nghĩa : Biểu thức (expression) là một công thức gồm có một hay
nhiều thành phần đợc kết nối với nhau bởi các phép toán. Mỗi thành phần (hay
3+5*3 = 18, (3+5)*3 = 24, 5/2*3 = 7.5
(5 + 2 > 4) and not (true or (5 - 3 = 8)) : biểu thức logic, cho kết quả false.
-b + sqrt(delta)/2*a : cho kết quả là
a
delta
b
2
+
(-b + sqrt(delta))/(2*a) = (-b + sqrt(delta))/2/a : cho kết quả là
a
deltab
2
+
19
Phần 3- Ngôn ngữ lập trình Pascal
7.5. Câu lệnh.
Câu lệnh (statement) là một dãy ký tự cơ bản đợc xây dựng theo một quy tắc
nhất định (gọi là cú pháp) nhằm chỉ thị cho máy thực hiện một công việc xác định.
Các câu lệnh đợc chia ra hai loại : câu lệnh đơn giản và câu lệnh có cấu trúc.
Sơ đồ tổng quan phân loại các loại câu lệnh trong Turbo Pascal
Các câu lệnh phải đợc ngăn cách nhau bởi dấu chấm phẩy (;) và không bắt
buộc phải viết mỗi câu lệnh trên một dòng. Vấn đề là chúng ta phải trình bày
chơng trình sao cho đẹp, rõ ràng, thể hiện đợc thuật toán.
7.6. Lệnh gán.
Lệnh gán (assignment statement) dùng để gán giá trị của một biểu thức cho
một biến đã khai báo.
Cú pháp của lệnh gán :
ý nghĩa : Đầu tiên máy tính trị của biểu_thức vế phải, sau đó gán giá trị tính đợc
cho tên_biến ở vế trái.
Chú ý :
Lệnh phức (Begin ... End)
Lệnh lựa chọn (If ..., Case ...)
Lệnh lặp (For ..., Repeat ..., While ...)
tên_biến := biểu_thức
Giáo trình tin học đại cơng
Câu hỏi - Bài tập
[7.1] Hằng, biến là gì ? Viết các khai báo hằng và biến sau :
a) hằng số c = 100.
b) x, y là các biến thực.
c) i là biến nhận các giá trị nguyên trong khoảng từ -32768 đến 32767.
d) kt, traloi là các biến ký tự.
e) hoten là biến chuỗi ký tự.
[7.2] Hãy viết các biểu thức sau ra Turbo Pascal :
a)
2
y
x
yx
+
; b)
)1(9
)652)(2(
2
++
aa
xxa
;
c)
f) &; g) sqrt(4); h) sqr(15); i) -32770; k) CINTA
[7.7] Hãy xác định giá trị của các biến sau khi thực hiện các lệnh gán sau :
x := (4+5)*2 div 7 + sin(pi/6);
L := (2 > 4 div 2) or Not (49.25 + 2 < 50);
[7.8] Cho biết kết quả và kiểu dữ liệu của các biểu thức sau :
a) 3 + 5.0 ; b) 6/3 + 2 div 3 ;
c) (10*((45 mod 3)+12))/6 ; d) (5<=3) and (not true and (12 div 3 <=1)).
[7.9] Viết chơng trình nhập số thực x từ bàn phím; sau đó tính và in các giá trị
của y và z lên màn hình theo công thức :
2
32sin
22
++
=
x
e
xx
y
;
( )
1log2
3
++=
xz
x
.
[7.10] Chỉ dùng một biến số, viết chơng trình in ra giá trị của tổng :
21
Phần 3- Ngôn ngữ lập trình Pascal
Writeln(*****);
Writeln(-------------------------------------------------);
End.
Kết quả trên màn hình sau khi chạy chơng trình :
Chú ý : Có hai dạng viết trong thủ tục WRITE và WRITELN là viết không quy
cách và viết có quy cách. Chúng sẽ đợc xét cụ thể với từng kiểu dữ liệu qua các
ví dụ sau :
Ví dụ 2 :
22
WRITE(bt_1, bt_2, ..., bt_n) (1)
WRITELN(bt_1, bt_2, ..., bt_n) (2)
Đây là kết quả của phép nhân A với B : 8*****
----------------------------------------------------
Giáo trình tin học đại cơng
Program Vidu_2 ; {dạng viết không quy cách}
Uses Crt;
Var
i : Byte;
r : real;
ch : Char;
b : Boolean;
Begin
Clrscr;
i := 123; r := 123.456; ch := D; b := 2<5;
Writeln(i);
Writeln(r); Writeln(-3.14); Writeln(20*2.5); Writeln;
Writeln(ch);
Writeln(b);
Writeln(20,#248); {in ra 20
0
Writeln(35.123456789:12:6);
Writeln(ch:4);
Writeln(ABC:5);
Writeln(B:7);
End.
Kết quả trên màn hình sau khi chạy chơng trình :
Vậy cách viết không quy cách sẽ căn lề theo bên phải.
Chú ý : Vì dấu nháy đơn () để đánh dấu ký tự, do đó khi muốn xuất nó ra màn
hình, ta viết 2 lần dấu nháy đơn. Chẳng hạn, lệnh Write(Dont forget me !); sẽ
xuất ra màn hình : Dont forget me !
8.1.2. Xuất dữ liệu ra máy in : Để xuất dữ liệu ra máy in, ta dùng các lệnh
WRITE, WRITELN với tham số LST vào trớc danh sách các tham số. Vì biến
LST đợc khai báo trong Unit Printer, vì vậy cần khai báo Unit này ở đầu chơng
trình sau từ khoá USES.
Ví dụ 4 :
Program Vidu_4 ;
Uses Printer;
Begin
Writeln(Lst,x = ,12, và y = ,3.55:3:1);
End.
Kết quả sẽ in ra giấy nội dung sau : x = 12 và y = 3.6
8.1.3. Một số hàm, thủ tục trình bày màn hình trong Turbo Pascal
GOTOXY(X,Y) : Thủ tục di chuyển con trỏ đến vị trí dòng Y cột X. Các cột đ-
ợc đánh số từ 1 đến 80, các dòng đợc đánh số từ 1 đến 25.
CLRSCR (Clear Screen) : Thủ tục xoá toàn bộ màn hình và đa con trỏ về
dòng 1 và cột 1 của màn hình.
CLREOL (Clear End Of Line) : Thủ tục xoá các ký tự từ vị trí con trỏ đến hết
dòng. Sau khi thực hiện xong, con trỏ đứng ngay vị trí trớc khi gọi thủ tục.
DELLINE : Thủ tục xoá dòng con trỏ đang đứng và dịch các dòng dới lên một
dòng.
Window(60,2,75,4);
Writeln(BM TIN HOC);
Writeln( ----------------);
End.
Kết quả trên màn hình sau khi chạy chơng trình :
18 22 60
1
2
3
5
25
BM TIN HOC
PASCAL ---------------
BAN HAY DEN VOI
TURBO PASCAL 7.0