Thứ Sáu, 24 tháng 1, 2014

Ôn tập Pascal

TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
d. APPROXIMATE_ANGLES:__56.7_AND_______-0.0
MAGNITUDES_ARE_______39___AND______5117
17. Giả sử A, B, C là biến nguyên , X, Y, Z là biến thực. Hãy cho biết trị nào (nếu có ) gán cho
biến nào và giải thích lí do sai (nếu có) khi thực hiện các lệnh sau với trị nhập tương ứng :
a. readln (A, B, C, X, Y, Z ) ; nhập: 1 2 3
4 5.5 6.6
b. readln (A, B, C) ; nhập: 1
readln (X, Y, Z) ; 2
3
4
5
6
c. read (A, X) ; nhập: 1 2.2
read (B, Y) ; 3 4.4
read (C, Z) ; 5 6.6
d. read (A, B, C) ; nhập: 1 2.2
readln (X, Y, Z) ; 3 4.4
5 6.6
e. read (A); nhập: 1 2 3
readln (B, C); 4 5.5 6.6
read (X, Y) ;
readln (Z);
f. readln (A); nhập: 1 2 3
read (B, C) ; 4 5.5 6.6
readln (X, Y);
read (Z);
g. read (A, B); nhập: 1 2 3
readln ; 4 5.5 6.6
read (C); 7 8.8 9.9
readln(X); 10 11.11 12.12
readln ; 13 14.14 15.15
readln (Y);
readln ;
readln (Z);
II. PHẦN THỰC HÀNH
•Gõ vào máy và thực hiện chương trình BT1_1 . PAS sau:
{ = = = = = = = = = = = = = = = = = = = = = = = = = = = }
{ Program : BT1_1. PAS }
{ Date : dd/mm/yyyy }
{ Notes : hien thi hang chuoi , nguyen va thuc }
{ = = = = = = = = = = = = = = = = = = = = = = = = = = = }
Begin
writeln( ‘ Day la chuong trinh dau tien cua toi ‘) ;
5
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
writeln ;
writeln( ‘ Day la mot chuoi ‘ );
writeln( ‘ Day la mot so nguyen : ‘ , 12345);
writeln( ‘ Day la mot so thuc ( dang dong ) : ‘ ,123.45 );
writeln( ‘ Day la mot so thuc ( dang tinh ) : ‘ ,123.45:7:3);
writeln ;
write( ‘ xem xong bam Enter ; ) ; readln ;
End.
Hướng dẫn (Trong môi trường Windows)
1. Kích hoạt chương trình Windows Explorer để tạo một folder sẽ dùng lưu trữ các file
chương trình của Pascal (Ví dụ: C:\BT_PAS)
2. Kích hoạt chương trình Borland Pascal (Thực hiện Run: \\BP\BIN\BP.EXE)
3. Thông qua menu [Options] -> [Directories] xác lập giá trị C:\BT_PAS cho mục [EXE and
TPU directories] -> [OK].
4. Thông qua menu [File]-> [Change Dir] chọn thư mục làm việc mới là C:\BT_PAS.
5. Thông qua menu [Options] -> [SAVE BP.TP] để lưu lại các xác lập trên.
6. Mở cửa sổ soạn thảo mới ([File]-> [New]).
7. Gõ chương trình với nội dung trên vào cửa sổ soạn thảo. Gõ xong nhấn F2 (để lưu lên đĩa
với tên BT1_1.PAS).
8. Nhấn phím F9 để biên dịch chương trình trên. Nếu có lỗi thì sửa lỗi (nhớ nhấn F2 để Save
lại mỗi khi có thay đổi văn bản chương trình). Thực hiện cho đến khi nào việc biên dịch
thành công.
9. Nhấn Ctrl_F9 (giữ phím Ctrl và nhấn F9) để chạy chương trình.
•Gõ vào máy và thực hiện chương trình BT1_2.PAS sau:
Program BT1_2;
(*
Date :dd/mm/yyyy
Notes : Nhap so nguyen va chuoi roi xuat ra man hinh
*)
Uses crt; (* Thu vien CRT chua thu tuc CLRSCR xoa man hinh *)
Var I: integer;
S: string[20]; (* khai bao chuoi s co chieu dai 20 *)
Begin
Clrscr;
Write(‘Hay go vao mot so nguyen’); Readln(i);
Writeln(‘so cua ban la’,i);
Write(;’Hay go vao mot chuoi:’); Readln(s);
Write(‘chuoi cua ban la’,s); Writeln;
Write(‘xem xong bam Enter’):readln;
End.
•Gõ vào máy và thực hịện chương trình BT1_3.PAS sau:
6
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
Program: BT1_3;
(*
Date :dd/mm/yyyy
Notes : Nhap 2 so thuc , cong, tru, nhan, chia 2 so roi hien thi ( so thu hai khac 0)
*)
Uses crt;
Var so1, so2, cong, tru, nhan , chia:real;
Begin
Clrscr;
Write(‘cho so thu nhat :’); readln(so1);
Write(‘cho so thu hai :’); readln(so2);
Cong:=so1+so2; Tru:=so1-so2; Nhan:=so1*so2; Chia:=so1/so2;
Writeln;
Writeln(‘so1+so2=’,cong);
Writeln(‘so1-so2=’,tru);
Writeln(‘so1*so2=’,nhan);
Writeln(‘so1/so2=’,chia);
Writeln;
Writeln(‘so1+so2=’,cong:10:3);
Writeln(‘so1-so2=’,tru:10:3);
Writeln(‘so*so2=’,nhan:10:3);
Writeln(‘so1/so2=’,chia:10:3);
Writeln;
Write(‘Nhan xet va xem xong bam Enter’); readln;
End.
•Gõ vào máy và thưc hiện chuơng trình BT1_4.pas sau
Program:BT_4;
(*
Date:dd/mm/yyyy
Notes:hien thi 3 hinh tam giac
*)
uses crt;
Begin
clrscr;
write(‘ * * * * * * * * * ’);
write(‘ * * * * * * * * * * * ‘ );
write(‘ * * * * * * * * * * * * * ‘);
write(‘ * * * * * * * * * * * * * * *’);
write(‘xem xong bam enter’);readln;
End.
•Viết chương trình BT_5 .PAS tính diện tích hình chữ nhật khi biết chiều dài và chiều rộng, kết
quả trên màn hình có dạng:
= = = = = = = = = = = = = = = = == = =
7
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
TINH DIEN TICH HINH CHU NHAT
= = = = = = == = == = = = = = = = = =
Xin cho biet chieu dai : xxxx
Xin cho biet chieu rong : xxxx
Dien tich la : xxxxxxxx
Hướng dẫn.
Nhập: Dai ,Rong
Xuất : Dien tich
Giải thuật
1. Nhap Dai va Rong
2. Tính Dien tich = Dai * Rong
3. Xuất Dien Tich
•Viết chương trình BT_6.PAS tính diện tích và chu vi hình tròn khi biết bán kính, kết quả trên màn
hình có dạng.
= = = = = = = = = = = = = = = = = = = = = = =
TINH DIEN TICH & CHU VI HINH TRON
= = = = = = = = = = = = = = = = = = = = = = =
Xin cho biet ban kinh:xxx.x
Chu vi :xxxxxx.x
Dien tich :xxxxxx.x
Hướng dẫn:
Nhập:Ban kinh
Xuất: Chu vi Dien tich
Giải thuật:
1. Nhập bán kính
2. Tính chu vi =2*ban kinh*pi
3. Dien tich =ban kinh*chu vi*pi (pi là hằng trị được định nghĩa sẳn của Unit CRT)
4. Xuất Chu vi,Dien tich
•Viết chương trình BT1_7.PAS tính tổng, hiệu, tích, thương và dư của hai số nguyên, kết quả trên
màn hình có dạng:
= = = = = = = = = = = = = == = == = = = == = = = = = = = = = = = =
TINH TONG, HIEU, TICH, THUONG, DU CUA HAI SO NGUYEN
= = = = = == = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Cho biet so thu nhat: xx
Cho biet so thu hai: xx
Tong = XXXX
Hieu = XXXX
Tich = XXXX
Thuong = XXXX
Du = XXXX
Hướng dẫn
Nhập:So1, So2
8
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
Xuất: Tong, Hieu, Tich, Thuong,Du
Giải thuật:
1. Nhập: So1, So2
2. Tính Tong = So1+So2
Hieu = So1-So2
Tich = So1*So2
Thuong = So1/So2
Du = So1 MOD So2
3. Xuất Tong, Hieu, Tich, Thuong, Du
9
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
LỆNH RẺ NHÁNH
I. PHẦN LÝ THUYẾT
1. Giả sử a,b,c là các biến Bool, dùng bảng sự thật (chân trị) để tính trị các biểu thức Bool sau với
mọi trị của a,b,c.
a. a or not b b. not (a and b)
c. not a or not b d. a and True or (1+2 = 4)
e. a and (b or c) f. (a and b) or (a and c)
18. Viết biểu thức Bool biểu thị các điều kiện sau:
a. x lớn hơn 3
b. y giữa 2 và 5
c. R âm và Z dương
d. Alpha và Beta đều dương
e. Alpha và Beta cùng dấu (dương hoặc âm)
f. -5 < x < 5
g. a nhỏ hơn 6 hay lớn hơn 5
h. p = q = r
i. Chỉ một trong hai trường hợp: x nhỏ hơn 3 hoặc y nhỏ hơn 3
19. Cho 3 biến Bool a, b và c, hãy viết biểu thức Bool để
a. Đúng nếu và chỉ nếu a và b đúng, c sai
b. Đúng nếu và chỉ nếu a đúng v à ít nhất b hay c đúng
c. Đúng nếu chỉ nếu hoặc a hoặc b đúng
20. Viết lệnh đọc ba số thực và gán trị True hoặc false cho các biến Bool sau:
a. Triangle: True nếu ba số thực có thể biểu thị chiều dài các cạnh của một tam giác và false
nếu không . (Tổng của hai số phải lớn hơn số thứ ba )
b. Equilateral: True nếu Triangle là True và tam giác là đều (ba cạnh bằng nhau )
c. Isoceles : True nếu Triangle là True và tam giác là cân (ít nhất có hai cạnh bằng nhau )
d. Scalene: True nếu Triangle là True và tam giác là lệch ( không có hai cạnh bằng nhau )
21. Viết mệnh đề Pascal cho mỗi trường hợp sau:
a. Nếu TaxCode là ‘T’ tăng Price bằng cách cộng TaxRate vào nó.
b. Nếu Code là 1, đọc trị vào x và y , tính và in tổng của x và y .
c. Nếu A ở giữa 0 và 5 ,cho B bằng 1/ A
2
, nếu không cho B bằng A
2
.
d. Gán trị True cho biến Bool LeapYear nếu biến nguyên Year có trị là năm nhuần . (Năm
nhuần là bội số của 4 , nếu là bội số của 100 thì phải là bội số của 400 ) .
e. Gán trị cho Cost tương ứng với trị của Distance theo bảng sau :
Distance Cost
0 đến 100
Lớn hơn 100 nhưng không lớn hơn 500
Lớn hơn 500 nhưng nhỏ hơn 1000
5.00
8.00
10.00
10
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
1000 hoặc hơn 12.00
f. Hiển thị số ngày tương ứng với trị của tháng Month (1,2,…,12) . Dùng phần (d) để xác
định số ngày nếu trị số của Month là 2, giả định Year đã có trị .
22. Hãy cho biết kết xuất của đoạn chương trình sau:
Number : = 4;
Alpha : = -1.0;
If Number > 0 then
If Alpha > 0 then Writeln(‘First writeln’)
Else Writeln(‘Second writeln’);
Writeln(‘Third writeln’);
23. Một sinh viên dùng lệnh if sau trong chương trình:
If Honors = True then
If Awards = True then
GoodStudent:=False
Else if Honors = false then
GoodStudent:=False;
a. Hãy viết một mệnh đề if tương đương với lệnh trên.
b. Viết một mệnh đề gán tương đương với mệnh đề if trên.
24. Viết mệnh đề case trong các trường hợp sau:
a. Nếu trị biến ký tự TransCode là ‘D’, tăng.Balance lên một trị Amount ,nếu
TransCode là ‘W’ giảm bớt Balance một trị là Amount; Nếu TransCode là ‘P’,
hiển thị trị Balance.
b. Hiển thị tên tháng hoặc thông báo sai tương ứng với trị tháng của biến Month.
c. Hiển thị số ngày tương ứng của số Month.
II. PHẦN THỰC HÀNH
•Gõ vào máy và thực hiện chương trình BT2_ 1.pas sau:
Progam BT2_1;
(*
Date: dd/mm/yyyy
Notes: Nhap hai so nguyen va cho biet so nao nho hon
*)
Uses crt;
Var num1,num2:real; C:char;
Begin
Clrscr;
{ Nhap hai so }
Write(‘Cho biet so thu nhat:’);readln(num1);
Write(‘Cho so thu hai:’)readln; readln(num2);
11
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
Writeln;
{ Kiem tra }
If (num1<num2) then
Writeln(‘so thu nhat nho hon so thu hai’);
{ Ket thuc }
Gotoxy(28,25); { đưa điểm nháy trên màn hình đến vị trí cột 28, dòng 25}
Write(‘ xem xong nhấn nút bất kỳ”);
C:=readkey; {hàm readkey chờ nhấn một phím và có trị là kí tự đã nhấn}
End.
•Gõ vào máy và thực hiện chương trình BT2_2.PAS sau:
Program BT2_2;
(*
Date:dd/mm/yyyy
Notes:Nhap hai so nguyen va cho biet so nao nho hon
Tuong tu nhu BT2_1 nhung co cai tien
*)
Uses Crt;
Var num1,num2:real;
c:char;
begin
clrscr;
{Nhap hai so}
write(‘cho so thu nhat:’); readln(num1);
write(‘cho so thu hai:’); readln(num2);
writeln;
{kiem tra}
if (num1<num2) then
Writeln(‘So thu nhat nho hon o thu hai’)
Else
Writeln(‘So thu nhat lon hon so thu hai hay bang so thu hai’);
{ket thuc}
gotoxy(28,25); {dưa diểm nháy trên màn hình đến vị trí cột 28,dòng 25}
write(‘Xem xong nhan nut bat ky.’);
c:=readkey; {hàm readkey chờ một phím và có trị là ký tự đã nhấn }
end.
•Gõ vào máy và thực hiện chương trìnhBT2_3.PAS sau:
Program:BT2_3;
(*
Date:dd/mm/yyyy
Notes:nhap hai so nguyen va cho biet so nao nho hon
Tuong tu nhu BT2_2 nhung co cai tien
*)
Uses CRT;
12
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
Var Num1,Num2: real;
C :char;
Begin
Clrscr;
(*_ _ _Nhap hai so_ _ _*)
Write(‘Cho so thu nhat:’); readln(Num1);
Write(‘Cho so thu hai:’); readln(Num2);
Writeln;
(*_ _ _Kiem tra_ _ _ *)
If (Num1<Num2) then
Writeln(‘So thu nhat nho hon so thu hai’)
Else
If (Num1> Num2) then
Writeln(‘So thu nhat lon hon so thu hai’)
Else
Writeln(‘So thu nhat bang so thu hai’);
(* _ _ _Ket thuc_ _ _ *)
Gotoxy(28,25); (* đưa điểm nháy trên màn hình đến vị trí cột 28, dong 25 *)
Write(‘xem xong nhan nut bat ky’);
C :=readkey;
(* hàm readkey chờ nhấn một phím và có trị là kí tự đã nhấn *)
End.
•Viết chương trinh BT2_4.PAS nhập vào một số nguyên và cho biết đó là chẵn hay lẻ. Kết quả
trên màn hình có dạng:
= = = = = = = = = = = = = = = = = = = = = =
KIEM TRA MOT SO LA CHAN HAY LE
= = = = = = = = = = = = = = = = = = = = = =
Cho mot so nguyen: 1234
Do la so chan
Hướng dẫn
Nhập:So
Xuất: Thông báo
Giải thuật:
1. Nhập so
2. Nếu so MOD 2 = 0
3. Hiển thi thông báo ” Đó là số chẳn”
4. Nếu không hiển thị thông báo ”Đó là số lẻ”
•Viết chương trìng BT2_5.PAS nhập vào họ tên và tuổi của 2 học viên, so sánh biết ai lớn tuổi
hơn (hoặc bằng ). Kết quả trên màn hình có dạng:
= = = = = = = = = = = = = = = = =
SO SANH TUOI HAI HOC VIEN
= = = = = = = = = = = = = = = = =
Hoc vien 1-> Ho ten : XXXXXXXX Tuoi : XX
13
TRƯỜNG CAO ĐẲNG BẾN TRE
KHOA CÔNG NGHỆ THÔNG TIN
Hoc vien 2-> Ho ten: YYYYYYYY Tuoi : YY
Hoc vien XXXXXXXX lon tuoi hon YYYYYYY
Hướng dẫn
Nhập : Ho Ten 1,Tuoi1, Ho Ten2 ,Tuoi2
Xuất : Thông báo
Giải thuật:
1. Nhập HoTen1, Tuoi1, HoTen2, Tuoi2
2. Nếu Tuoi1>Tuoi2 hiển thị thông báo “Hoc vien”, HoTen1, “lon tuoi
hon”, HoTen2
3. Nếu không
4. Nếu Tuoi2>Tuoi1 hiển thị thông báo “Hoc vien”, HoTen2, “lon tuoi hon”
HoTen1
5. Nếu không
6. Hiển thị thông báo “Hoc vien” , HoTen1 “bang tuoi”, HoTen2
•Viết chương trình BT2_6.PAS nhập vào 3 số và cho biết số lớn nhất và nhỏ nhất là bao nhiêu.
Kết quả trên màn hình có dạng:
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
TIM SO LON NHAT & NHO NHAT TRONG BA SO
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
Cho so thứ nhất:1234
Cho số thứ hai :56
Cho số thứ ba :78
Số lớn nhất là 1234 và nhỏ nhất là 56
Hướng dẫn
Nhập:số(là 1 trong 3 số)
Xuất: SoMax (số lớn nhất), SoMin (số nhỏ nhất)
Giải thuật:
Gán 1.7E+38 cho số min và -1.7E+38 cho số max
Nhập So (thứ nhất)
Nếu So > SoMax thì gán So cho SoMax
Nếu So < SoMin thì gán So cho SoMin
Nhập Số (thứ hai)
Nếu So > SoMax thì gán So cho SoMax
Nếu So < SoMin thì gán So cho SoMin
Nhập số (thứ ba)
Nếu So > SoMax thì gán So cho SoMax
Nếu So < SoMin thì gán So cho SoMin
Hiển thị SoMax và SoMin
•Viết chương trình BT2_7.PAS nhập vào 3 số và cho biết đó là 3 cạnh của một tam giác không?
Kết quả trên màn hình có dạng:
= = = = = = = = = = = = = = = = = =
XAC DINH 3 CANH TAM GIAC
= = = = = = = = = = = = = = = = = =
14

Xem chi tiết: Ôn tập Pascal


Không có nhận xét nào:

Đăng nhận xét