Giáo án cô đọng và đầy đủ trong quá trình bồi dưỡng HSG tin 8 (Pascal) từ cấp trường, quận, thành phố,... gồm các phần sau: PHẦN CƠ BẢN:Bài thực hành 1: Làm quen với Free PascalBài thực hành 2: Viết chương trình để tính toánBài thực hành 3: Khai báo và sử dụng biếnBài thực hành 4: Sử dụng lệnh điều kiện IF…THEN…Bài thực hành 5: Sử dụng lệnh lặp FOR…DO…Bài thực hành 6: Sử dụng lệnh lặp WHILE…DO…Bài thực hành 7: Xử lý dãy số trong chương trình PHẦN NÂNG CAO:2.1.Bài thực hành 8: Xử lý các loại số2.2.Bài thực hành 9: Xử lý xâu ký tự2.3.Bài thực hành 10: Mảng 1 chiềuPhụ lục 01NTC: Lý thuyết xâu kí tự.
Trang 1LẬP TRÌNH PASCAL – TIN HỌC 8
1 Đề luyện tập cấp độ 1 (sơ cấp):
Bài thực hành 1: Làm quen với Free Pascal
Bài tập 1:
Sửa lỗi sai trong chương trình sau:
Program Bai tho;
Uses crt;
Begin;
Clrscr;
Writeln(‘Thuong ai cat buoc song song’)
Writeln(Toc bay cuong quit nang xuan nhe ve);
Writeln ‘Tan truong doi bong ngo nghe’;
Writln(‘Duong trua ngan qua! Ta le the buon.’);
Readln
End;
Hướng dẫn:
– Từ khóa, cách đặt tên chương trình, quy định phần thân chương trình
– Cú pháp lệnh:
Writeln(‘Chuỗi ký tự ’);
– Uses crt Khai báo thư viện crt
– Clrscr Xóa màn hình kết quả
– Writeln In ra màn hình
– Readln Tạm ngưng chương trình đến khi nhấn phím Enter
Bài tập 2:
Viết chương trình in ra màn hình nội dung sau:
“Hello Free Pascal!”
Hướng dẫn:
– Cú pháp lệnh:
Writeln(‘Chuỗi ký tự ’);
Bài tập 3:
Viết chương trình in ra màn hình 4 câu thơ sau:
“Mùa hè là mùa thi cử
Chúc bạn hiền hai chữ thành công
Thành công rồi có nhớ tôi không
Hay là đã trót bỏ quên nơi nào?”
Hướng dẫn:
– Sử dụng lệnh:
Write(‘Chuỗi ký tự ’);
Writeln(‘Chuỗi ký tự ’);
– Phân biệt lệnh Write và Writeln.
Bài tập 4:
Viết chương trình in ra màn hình bài thơ sau:
“Lắng tai nghe tiếng thở của thời gian
Tiếng lá rơi từ nhành non khe khẽ
Tiếng phượng nở nghe sao rất nhẹ
Chợt lặng đi trong bóng nắng ban chiều.”
Hướng dẫn:
– Write: Con nháy ở vị trí cuối dòng ký tự
– Writeln: Con nháy ở vị trí đầu dòng tiếp theo
Bài tập 5:
Viết chương trình dùng các ký hiệu trên bàn phím để vẽ hình
chữ nhật, hình bình hành, hình tam giác, hình thoi
*********** ########
*********** ########
*********** ########
########
$$$$$ % %
%
Hướng dẫn:
– Dùng lệnh Write hoặc Writeln
Trang 2Viết chương trình in bảng thông tin học sinh ra màn hình: Tên
trường, Họ tên, Lớp, Mã số Đóng khung đẹp mắt
**********************************
* Trường : THCS Đồng Khởi *
* Ho ten : Nguyen Trinh Lap *
**********************************
–
Bài tập 7:
Viết chương trình in ra màn hình nội dung sau:
a) (5 + 9) – 6 x 3
b) 25 : [12 – 5 x (4 :3) + 12] – 7
Hướng dẫn:
–
Bài thực hành 2: Viết chương trình để tính toán
Bài tập 1:
Viết chương trình tính các biểu thức sau:
a) (5 – 2 x 3) : 2 =
b) 12 : [5 x 3 + (5 * 8) – 1] =
c) 25^2 – 6 =
d) (15 div 2) mod 3 =
e) [(245 div 10) div 3] mod 2 =
f) (25 x 3) + 15 div (17 mod 5) =
Hướng dẫn:
– Kết hợp lệnh in chuỗi ký tự và in giá trị của biểu thức:
Write(‘ Chuỗi ký tự ’,biểu thức);
Writeln(‘ Chuỗi ký tự ’, biểu thức);
– Phép tính trong Pascal: cộng +, trừ -, nhân
*, chia /, mod, div và các dấu ( )
Bài tập 2:
Viết chương trình nhập năm sinh của một bạn học sinh là số
nguyên, cho biết bạn đó bao nhiêu tuổi (Cho năm hiện tại là
2017)
Ví dụ:
Nhap nam sinh: 2004
>> Tuoi cua ban la: 13
Hướng dẫn:
– Khai báo hằng số:
Const Tên_biến = <Giá trị>;
– Khai báo biến:
Var Biến_1, Biến_2,… : <Kiểu giá trị>;
– Readln(Tên_biến): Đọc là lưu giá trị vào biến
Bài tập 3:
Viết chương trình nhập vào năm hiện tại và năm sinh của một
bạn học sinh Tính tuổi của bạn học sinh đó
Hướng dẫn:
– Sử dụng hai biến kiểu số nguyên (Integer)
Bài tập 4:
Viết chương trình nhập số học sinh và số quả táo là số nguyên
Hãy chia táo cho các bạn, rồi xuất ra màn hình cho biết mỗi bạn
được bao nhiêu quả táo và con dư bao nhiêu quả táo?
Ví dụ:
Nhap so qua tao: 52
Nhap so hoc sinh: 15
>> Moi hoc sinh nhan duoc: 3 qua tao
>> Con du: 7 qua tao
Hướng dẫn:
– Kết hợp lệnh in chuỗi ký tự và in giá trị của biểu thức:
Write(‘Chuỗi ký tự ’,biểu thức, ’Chuỗi ký tự‘); Writeln(‘Chuỗi ký tự ’, biểu thức, ’Chuỗi ký
tự‘);
– Dùng lệnh Div để tìm số quả táo mỗi học sinh nhận được
– Dùng lệnh Mod để tìm táo dư
Bài tập 5:
Viết chương trình nhập điểm toán, văn, anh của một bạn học
sinh là số thực Hãy tính điểm trung bình của bạn đó biết điểm
toán, văn hệ số 2
Ví dụ:
Hướng dẫn:
– Sử dụng biến toán, văn, anh kiểu số thực (Real)
– Cú pháp lệnh:
Writeln(<Giá trị thực> :n :m);
Trang 3Nhap diem toan: 9.5
Nhap diem van: 8
Nhap diem anh: 9.5
>> Diem trung binh cua ban la: 9.0
Trong đó:
N : Độ dài để in số
M : Số chữ số thập phân
Bài tập 6:
Viết chương trình nhập vào một số nguyên có 3 chữ số Hãy
cho biết 2 chữ số cuối cùng của số đó là bao nhiêu
Ví dụ:
Nhap so nguyen co 3 chu so: 356
>> Hai chu so cuoi cung la: 56
Hướng dẫn:
– Sử dụng lệnh Mod để tìm 2 chữ số cuối
Bài thực hành 3: Khai báo và sử dụng biến
Bài tập 1:
Viết chương trình nhập bán kính của hình tròn là số thực Hãy
tính diện tích và chu vi của hình tròn đó (Lấy 2 chữ số thập
phân)
Ví dụ:
Nhap ban kinh: 2
>> Dien tich la: 12.56
>> Chu vi la: 12.56
Hướng dẫn:
– Khai báo hằng số Pi = 3.14 Const
– Khai báo biến kiểu số thực Real
– Công thức:
Diện tích hình tròn = Bán kinh 2 x Pi Chu vi hình tròn = 2 x Bán kính x Pi
Bài tập 2:
Viết chương trình nhập chiều cao của 2 bạn học sinh là so
thực, đơn vị là mét Hãy tính trung bình cộng chiều cao của 2
bạn đó
Ví dụ:
Nhap chieu cao ban 1: 1.5
Nhap chieu cao ban 2: 1.6
>> Trung binh cong chieu cao hai ban la: 1.55
Hướng dẫn:
– Kết quả lấy 2 chữ số thập phân (2 số lẻ)
Bài tập 3:
Nhập cạnh a Tính và xuất chu vi, diện tích hình vuông
Hướng dẫn:
– Chu vi = a x 4
– Diện tích = a2
Bài tập 4:
Nhập cạnh a, b Tính chu vi và diện tích hình chữ nhật
Hướng dẫn:
– Chu vi = (a + b) x 2
– Diện tích = a x b
Bài tập 5:
Nhập cạnh a, b, c Tính và xuất chu vi, diện tích hình tam giác
Hướng dẫn:
– Chu vi = a + b + c
– Dien tich = Với p = Chu vi : 2
Bài tập 6:
Nhập vào hai số nguyên dương a, b Tính tổng, hiệu, thương,
tích của hai số nguyên đó
Hướng dẫn:
–
Bài tập 7:
Nhập số nguyên n Tính và xuất giá trị tuyệt đối của n
Hướng dẫn:
– Sử dụng hàm Abs(a) để lấy giá trị tuyệt đối của a |a|
Bài tập 8:
Nhập số nguyên n Tính và xuất căn bậc hai của n
Hướng dẫn:
– Sử dụng hàm Sqrt(a) để lấy căn bậc 2 của a
Trang 4 Bài tập 9:
Viết chương trình nhập vào hai số nguyên dương a và b Hãy
hoán đổi giá trị a và b cho nhau và in ra màn hình kết quả
Ví dụ:
Nhap a: 15
Nhap b: -8
>> Sau khi hoan doi gia tri a= -8
>> Sau khi hoan doi gia tri b= 15
Hướng dẫn:
– Sử dụng phép gán:
T := 12; T mang giá trị 12
E := T; E mang giá trị của T và E = 12
T := T – 5; T mang giá trị 7
Bài tập 10:
Viết chương trình đảo ngược một số nguyên dương có đúng 3
ký số
Ví dụ:
Nhap so nguyen co 3 ky so: 248
>> Dao cua 248 la: 842
Hướng dẫn:
–
Bài thực hành 4: Sử dụng lệnh điều kiện IF…THEN…
Bài tập 1:
Viết chương trình nhập vào 1 số nguyên Kiểm tra xem số đó có
phải là số chính phương không
Hướng dẫn:
– Số chính phương là số có căn bậc 2 là một
số nguyên
– Sử dụng hàm Frac Hàm lấy số lẻ
– Sử dụng hàm Sqrt Lấy căn bậc 2
Bài tập 2:
Viết chương trình nhập vào 1 số nguyên có 2 ký số Kiểm tra số
vừa nhập là chẵn hay lẻ
Ví dụ:
Nhap so nguyen: 17
>> 17 la so lẻ
Hướng dẫn:
– Sử dụng lệnh Mod để kiểm tra tính chẵn hay lẻ
Bài tập 3:
Nhập vào 2 số nguyên a và b Cho biết giá trị lớn nhất trong hai
số đó
Ví dụ:
Nhap hai so a va b: -8 12
>> So lon nhat la: 12
Hướng dẫn:
– Dùng Readln(Biến_1, Biến_2) để nhập hai
biến trên cùng một dòng
– Cách 1: Dùng điều kiện a>=b hoặc a<b để
in giá trị lớn nhất
– Cách 2:
Gán max:=a;
Nếu max<b thì gán max:=b;
In kết quả là max ra màn hình
Bài tập 4:
Nhập vào 3 số nguyên t1, t2, t3 Cho biết giá trị nhỏ nhất trong
3 số đó
Ví dụ:
Nhap t1, t2 va t3: 9 -6 1
>> -6 la gia tri nho nhat
Hướng dẫn:
– Gán min:=t1;
– Nếu min>t2 thì gán min:=t2;
– Nếu min>t3 thì gán min:=t3;
– In kết quả là min ra màn hình
Bài tập 5:
Viết chương trình nhập số kg gạo là số nguyên Giả sử có 1 số
Hướng dẫn:
– Sử dụng lệnh Mod và Div
Trang 5bao: 20 kg, 10 kg, 5 kg, 2 kg, 1 kg Hãy tìm cách cho gạo vào
bao sao cho số lượng bao cần dùng là ít nhất
Ví dụ:
Nhap so kg gao: 49
>> Bao 20 kg : 2
>> Bao 5 kg : 1
>> Bao 2 kg : 2
– Nếu số lượng bao nào > 0 thì in số lượng bao đó ra màn hình
Bài tập 6:
Viết chương trình nhập vào 2 số nguyên x, y Nếu x>0 thì tăng x
thêm 2 đơn vị Nếu y>0 thì hãy gấp đôi giá trị của y
Ví dụ:
Nhap x : 4
Nhap y : 5
>> Gia tri moi cua x la : 6
>> Gia tri moi cua y la : 10
Hướng dẫn:
–
Bài tập 7:
Viết chương trình kiểm tra một số nguyên n là số âm hay
dương
Hướng dẫn:
–
Bài tập 8:
Viết chương trình kiểm tra một số thực có chứa số lẻ hay
không và in các số lẻ đó ra màn hình
Ví dụ:
Nhap so thuc : 2.578
>> So thuc co so le la: 578
Hướng dẫn:
– Sử dụng hàm Frac để kiểm tra
Bài tập 9:
Viết chương trình nhap vào một số nguyên dương là tháng
trong một năm và in ra số ngày của tháng đó Biết rằng:
+ Tháng có 31 ngày: 1, 3, 5, 7, 8, 10, 12
+ Tháng có 30 ngày: 4, 6, 9, 11
+ Tháng có 28 hoặc 29 ngày: 2
Hướng dẫn:
–
Bài tập 10:
Nhập 2 số a, b Kiểm tra xem chúng có cùng dấu hay không?
Hướng dẫn:
–
Bài tập 11:
Nhập vào hai số nguyên dương a, b So sánh giá trị của chúng
(lớn, nhỏ, bằng)
Hướng dẫn:
–
Bài tập 12:
Nhập vào chiều dài 3 đoạn thẳng là số nguyên Kiểm tra xem 3
đoạn thẳng đó có tạo thành 1 tam giác
Hướng dẫn:
– 3 đoạn thẳng d1, d2, d3 có thể tạo thành tam giác tổng hai đoạn thẳng bất kỳ phải lớn hơn đoạn thẳng còn lại
Bài tập 13:
Nhập vào số nguyên t Kiểm tra xem t có vừa chia hết cho 3
vừa chia hết cho 5 không?
Hướng dẫn:
– Sử dụng lệnh kết hợp điều kiện And
Bài tập 14:
Nhập vào số nguyên t Kiểm tra xem t có chia hết cho 3 hoặc
không chia hết cho 7 không?
Hướng dẫn:
– Sử dụng lệnh kết hợp điều kiện Or
Trang 6 Bài tập 15:
Nhập vào một số nguyên có 3 ký số Hoán đổi vị trí các ký số
sao cho số đó đạt giá trị lớn nhất
Ví dụ:
Nhap so nguyen co 3 ky so : 152
>> 521 dat gia tri lon nhat sau khi hoan doi
Hướng dẫn:
– N =
– Dùng lệnh Mod và Div để gán t1=a, t2=b, t3=c
– Nếu t1<t2 thì hoán đổi giá trị t1 và t2
– Nếu t1<t3 thì hoán đổi giá trị t1 và t3
– Nếu t2<t3 thì hoán đổi giá trị t2 và t3
– Sử dụng Begin…End; để kết hợp nhiều lệnh cho lệnh If Then…
Bài tập 16:
Nhập số nguyên dương t có 4 ký số Kiểm tra xem t có phải là
số đơn điệu
Hướng dẫn:
– Số đơn điệu là số có các ký số luân phiên tăng giảm hoặc giảm tăng (Ví dụ: 4523 đơn điệu vì 4<5>2<3)
Bài thực hành 5: Sử dụng lệnh lặp FOR…DO…
Bài tập 1:
Viết chương trình nhập vào 1 số nguyên dương n In ra màn
hình các số từ 1 đến n trên cùng dòng và các số chiếm 5 ô ký
tự
Ví dụ:
Nhap so nguyen n : 8
>> Cac so tu 1 den 8 la :
Hướng dẫn:
– Cú pháp lệnh:
Write(<Giá trị > :n);
Trong đó: n là số ô ký tự
Bài tập 2:
Viết chương trình nhập 1 số nguyên dương n (n>5) Cho biết từ
1 đến n có bao nhiêu số chia hết cho 3
Ví dụ:
Nhap n = 10
>> Tu 1 den 10 co 3 so chia het cho 3
Hướng dẫn:
– Hàm Inc(a) Tăng a lên thêm 1 đơn vị
Bài tập 3:
Viết chương trình nhập 1 số nguyên dương a (a>5) Hãy xuất ra
màn hình các số chẵn từ 1 đến a
Ví dụ:
Nhap a = 7
>> Cac so chan la: 2 4 6
Hướng dẫn:
–
Bài tập 4:
Viết chương trình nhập vào 1 số nguyên dương b Hãy in ra
màn hình bảng cửu chương b
Ví dụ:
Nhap b = 3
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
…
3 x 10 = 30
Hướng dẫn:
–
Trang 7Nhập số nguyên dương t In ra các số chia cho 4 dư 1 trong
khoảng [1,t]
–
Bài tập 6:
Nhập số nguyên dương t In ra các số vừa chia hết cho 3 vừa
chia hết cho 7 trong khoảng [1,t]
Hướng dẫn:
–
Bài tập 7:
Nhập số nguyên dương t In ra các số không chia hết cho 4
hoặc không chia hết cho 7 trong khoảng [1,t]
Hướng dẫn:
–
Bài tập 8:
Nhập số nguyên dương t Liệt kê các ước số của t
Hướng dẫn:
–
Bài tập 9:
Nhập số nguyên dương t Liệt kê các ước số chẵn của t
Hướng dẫn:
–
Bài tập 10:
Nhập số nguyên dương t T có bao nhiêu ước số lẻ
Hướng dẫn:
–
Bài tập 11:
Nhập số nguyên dương t Tính tổng các ước số chia hết cho 3
của t
Hướng dẫn:
–
Bài tập 12:
Nhập số nguyên dương t Tính tích các ước số chia hết cho 7
của t
Hướng dẫn:
–
Bài tập 13:
Nhập số nguyên dương k Kiểm tra xem k có phải là số hoàn
hảo
Hướng dẫn:
– Số hoàn hảo là số có tổng các ước số nhỏ hơn nó bằng chính nó
Bài tập 14:
Nhập số nguyên dương t Kiểm tra xem k có phải là số nguyên
tố
Hướng dẫn:
– Số nguyên tố là số chỉ có 2 ước số
Bài thực hành 6: Sử dụng lệnh lặp WHILE…DO…
Bài tập 1:
Viết chương trình nhập 1 số nguyên n Cho biết n có bao nhiêu
chữ số
Ví dụ:
Nhap n: 12345
>> 12345 co 5 chu so
Hướng dẫn:
– Sử dụng hàm Inc(dem) Tăng biến đếm lên
1 đơn vị
– Tránh vòng lặp chạy mãi mãi
Bài tập 2:
Viết chương trình nhập 2 số nguyên n, m (n<m) Mỗi lần tăng n
thêm 2 đơn vị, hỏi tăng bao nhiêu lần thì n sẽ gần bằng hoặc
bằng m
Ví dụ:
Nhap n : 3
Nhap m : 9
>> Tang 3 len 3 lan
Hướng dẫn:
– Giảm biến đếm 1 đơn vị khi in ra màn hình
Bài tập 3:
Viết chương trình nhập n (điều kiện: 5<n<50) In ra màn hình
các số chính phương ≤ n
Hướng dẫn:
– Kiểm tra n có nhập đúng không
… Dau_hieu:=1; i:=1;
Trang 8While (dau_hieu<=n) do Begin
Write(i*i,’ ‘);
Inc(i);
Dau_hieu:=i*i;
End;
…
Bài tập 4:
Viết chương trình in ra màn hình các số chia cho 7 dư 2 và ≤ n
N là số nguyên nhập từ bàn phím
Hướng dẫn:
–
Bài thực hành 7: Xử lý dãy số trong chương trình
Bài tập 1:
Viết chương trình nhập vào dãy số nguyên có n phần tử In ra
màn hình dãy số nguyên đó trên cùng 1 dòng
Hướng dẫn:
– Khai báo dãy số bằng 1 trong 2 cách:
o Cách 1:
Const GioiHan=50;
Type DaySo = Array [1 GioiHan] of Integer; Var A : DaySo;
o Cách 2:
Const GioiHan=50;
Var A : Array [1 GioiHan] of Integer;
Bài tập 2:
Viết chương trình nhập vào dãy số nguyên có n phần tử In ra
màn hình:
a) Dãy số nguyên đó
b) Các phần tử có giá trị chẵn
c) Các phần tử ở vị trí lẻ
Hướng dẫn:
–
Bài tập 3:
Viết chương trình nhập vào dãy số nguyên có n phần tử Tìm
giá trị phần tử lớn nhất và giá trị phần tử nhỏ nhất
Hướng dẫn:
– Đặt min, max mang giá trị phần tử đầu tiên
– Nếu có phần tử > max thì max mang giá trị của phần tử đó
– Nếu có phần tử < min thì min mang giá trị của phần tử đó
Bài tập 4:
Viết chương trình nhập 2 dãy số nguyên A, B có n phần tử Hãy
tạo dãy C có các phần tử là tổng tương ứng của 2 dãy A, B
Ví dụ:
…
Day A: 1 2 3 4
Day B: 2 3 4 5
Day C: 3 5 7 9
Hướng dẫn:
–
Bài tập 5:
Viết chương trình nhập dãy số thực A có n phần tử và dãy số
thực B có m phần tử
Hãy tạo dãy C có n+m phần tử của A, B (A trước B sau)
Hướng dẫn:
–
Trang 9Ví dụ:
Day A co 3 phan tu: 1 3 5
Day B co 4 phan tu: 2 4 6 8
>> Day C co 7 phan tu: 1 3 5 2 4 6 8
Bài tập 6:
Viết chương trình nhập vào một dãy n số thực Sắp xếp dãy số
thực đó theo giá trị giảm dần In lại dãy số đã được sắp xếp với
giá trị mỗi phần tử chỉ thể hiện 2 số lẻ
Hướng dẫn:
– Tìm phần tử lớn chuyển về đầu dãy Ví dụ sắp xếp dãy số nguyên:
(2, 6, -5, 8, -2) (8, 6, -5, 2, -2)
(8, 6, -5, 2, -2) (8, 6, 2, -5, -2)
(8, 6, 2, -2, -5)
– Sắp xếp dãy số thực tương tự
Bài tập 7:
Viết chương trình nhập vào dãy n phần tử, với giá trị mỗi phần
tử là một ký tự In lại dãy ký tự đã được sắp xếp tăng dần theo
giá trị mã ASCII tương ứng
Ví dụ:
Day co 5 ky tu: fa5bp
>> Day da duoc sap xep theo ma ASCII: 5abfp
Hướng dẫn:
– Kiểu ký tự: Char
– Sử dụng hàm Ord(‘Ký tự’) Giá trị mã ASCII của ký tự
Bài tập 8:
Viết chương trình nhập vào xâu ký tự S In ra màn hình mã
ASCII tương ứng với từng ký tự Tìm ký tự có mã ASCII nhỏ
nhất
Hướng dẫn:
– Khai báo xâu ký tự:
Var Tên_biến : String[độ dài của xâu];
– Hàm Length(st): cho độ dài thực của xâu ký
tự st
2 Đề luyện tập cấp độ 2:
2.1 Bài thực hành 8: Xử lý các loại số
Bài tập 1 Viết chương trình nhập vào số nguyên N Kiểm tra N có phải là số chính phương
Hướng dẫn:
Sử dụng hàm Frac, Sqrt
Bài tập 2 Viết chương trình nhập vào số nguyên N Kiểm tra N có phải là số hoàn hảo
Bài tập 3 Viết chương trình nhập vào số nguyên N Kiểm tra N có phải là số nguyên tố
Bài tập 4 Viết chương trình nhập vào số nguyên N Kiểm tra N có phải là số đơn điệu
Bài tập 5 Viết chương trình nhập 1 số nguyên K In ra màn hình các số chính phương ≤ K
Bài tập 6 Viết chương trình nhập 1 số nguyên K In ra màn hình các số hoàn hảo ≤ K
Bài tập 7 Viết chương trình nhập 1 số nguyên K In ra màn hình các số nguyên tố ≤ K
Bài tập 8 Viết chương trình in ra màn hình các số đơn điệu có 4 ký số
Bài tập 9 Viết chương trình nhập 1 số nguyên K In ra màn hình các cặp số hữu nghị ≤ K
Ví dụ:
Nhap K : 1000
>> Cac cap so huu nghi la: (48, 75) (75, 48) (140, 195) (195, 140)
Hướng dẫn:
Hai số tự nhiên A, B được coi là hữu nghị nếu như số này bằng tổng các ước số thực sự của
số kia (tổng các ước không tính ước số 1 và chính nó) và ngược lại
Bài tập 10 Tổng lập phương: Tìm tất cả các số có 3 chữ số sao cho tổng lập phương của các chữ số bằng
chính số đó
Ví dụ: 153 = 13 + 53 + 33
Trang 10
Dữ liệu:
File input File Output
153 370 371 407 Bài tập 11 Có bao nhiêu số có 2 chữ số có tính chất sau: Mỗi số trừ đi số viết theo thứ tự ngược lại là 1 số
chính phương
Ví dụ:
10 10 – 1 = 9 9 là SCP
Bài tập 12 Nhập vào 1 số n (n>5) Hãy phân tích n thành tổng các bộ 3 số nguyên tố
Dữ liệu:
File Input File Output
2 7 7 Bài tập 13 Viết chương trình liệt kê tất cả các số tự nhiên có 3 chữ số mà tổng các chữ số của nó bằng số tự
nhiên cho trước
Dữ liệu:
4 103 112 121 130 202 211 220 301 310 Bài tập 14 Có mấy cách phân tích số tự nhiên n = i3 + j3 (i ≤ j) Nhập n, xuất các cách
Dữ liệu:
File Input File Output
4 9
Bài tập 15 Số gần nhất: Cho số nguyên dương N và chữ số c, tìm số nguyên dương nhỏ nhất k thỏa k > N và
trong biểu diễn của k trong hệ thập phân có chữ số c
Dữ liệu:
File Input File Output
Bài tập 16
2.2 Bài thực hành 9: Xử lý xâu ký tự
Bài tập 1 Cho xâu ký tự S gồm chữ và số Hãy loại bỏ các chữ để chuỗi chỉ còn các số
Ví dụ: S=’1acvb58d96’ S=’15896’
Hướng dẫn:
Hàm xóa ký tự: Delete(st, pos, num) VD: St = ‘FILENAME’
Delete(St, 5, 4) st = ‘FILE’
Hàm Length(st) Độ dài xâu ký tự st
Bài tập 2 Viết chương trình nhập vào một số thực có phần nguyên và phần thập phân Hoán đổi vị trí các ký
số của phần nguyên và vị trí các ký số của phần thập phân để số thực đó đạt giá trị lớn nhất Lưu ý không hoán đổi các ký số của phần nguyên và phần thập phân với nhau
Ví dụ: K = 152.061 K = 521.610