You are on page 1of 4

BÀI TẬP TỔNG HỢP

Vector
1. Viết chương trình khởi tạo 3 vector chứa điểm môn toán, lý, hoá của 10 học sinh. Hãy in ra màn
hình điểm trung bình 3 môn của mỗi học sinh, điểm trung bình mỗi môn, liệt kê điểm môn Hoá
trên 6 điểm.
(Toán: 8.3, 5.2, 8.9; Lý: 7.5 9.0 3.5, Hoá: 2.4, 5.7, 8.4
Điểm trung bình mỗi học sinh: 6.07 6.63 6.93
Trung bình môn Toán: 7.47
Trung bình môn Lý: 6.67
Trung bình môn Hoá: 5.50
Điểm môn hoá trên 6: 8.4)
2. Cho sẵn số xe (gồm 4 chữ số) của bạn. Cho biết số xe của bạn được mấy nút?
(2378, 2 + 3 + 7 + 8=20, 0 nút)
3. Cho sẵn một số tiền. Hãy cho biết với số tiền trên sẽ có bao nhiêu tờ tiền có mệnh giá 500, 200,
100, 50, 20, 10, 2, 1
(Ưu tiên tiền mệnh giá cao hơn,
vd: 1023 = 2*500 + 0*200 + 0*100 + 0*50 + 1*20 + 0*10 + 0*5 + 1*2 + 1*1)
Đọc ghi file
4. Tạo trước file csv chứa bốn cột tên STT, Toan, Ly, Hoa. Mỗi dòng là 3 điểm của học sinh. Tổng
cộng có 5 học sinh.
Viết chương trình đọc file csv trên. Hãy tính điểm trung bình 3 môn của mỗi học sinh, điểm trung
bình mỗi môn. Lưu theo định dạng file csv mới như sau.
Input Output

5. Tạo file text có 2 dòng, mỗi dòng là một số.


Hãy tính số tiền trên sẽ có bao nhiêu tờ tiền có mệnh giá 500, 200, 100, 50, 20, 10, 2, 1 và lưu vào
file text mới theo định dạng mới (Ưu tiên tiền mệnh giá cao hơn)

Input Output
6. Sử dụng mã nguồn lấy rss (file xml) từ trang báo Vnexpress. Lấy ra 10 tin đầu tiên lưu thành file
csv theo định dạng phía dưới.

Cấu trúc rẻ nhánh


7. Nhập một số bất kỳ. Hãy đọc giá trị của số nguyên đó nếu nó có giá trị từ 0 đến 9, ngược lại
thông báo không đọc được.
8. Nhập một chữ cái. Nếu là chữ thường thì đổi sang chữ hoa, ngược lại đổi sang chữ thường. Gợi ý:
as.numeric(charToRaw(‘a’)) rawToChar(as.raw(65))
9. Nhập a, b. Giải phương trình bậc nhất ax + b = 0.
10. Nhập a, b, c. Giải phương trình bậc hai ax2 + bx + c = 0.
11. Nhập 4 số nguyên a, b, c và d. Tìm số có giá trị nhỏ nhất (min).
12. Đọc 4 số nguyên a, b, c và d từ file text. Hãy sắp xếp giá trị của 4 số nguyên này theo thứ tự tăng
dần. Ghi lại giá trị sau khi sắp xếp vào file text khác.
13. Tính tiền đi taxi từ số km nhập vào. Biết:
a. 1 km đầu giá 15000đ
b. Từ km thứ 2 đến km thứ 5 giá 13500đ
c. Từ km thứ 6 trở đi giá 11000đ
d. Nếu trên 120km được giảm 10% tổng tiền.
14. Nhập vào tháng và năm. Cho biết tháng đó có bao nhiêu ngày.
15. Nhập độ dài 3 cạnh 1 tam giác. Kiểm tra đó có phải là tam giác không và là tam giác gì?
Vòng lặp
16. Nhập một số nguyên dương n (n > 0). Hãy cho biết:
a. Có phải là số đối xứng? Ví dụ: 121, 12321, …
b. Có phải là số chính phương? Ví dụ: 4, 9, 16, …
c. Có phải là số nguyên tố? Ví dụ: 2, 3, 5, 7, …
d. Chữ số lớn nhất và nhỏ nhất?
e. Xuất số ngược lại? Nhập 1706 ➔ Xuất 6071.
17. Nhập một số nguyên dương n. Tính:
a. S = 1 + 2 + … + n
b. S = 12 + 22 + … + n2
c. S = 1 + 1/2 + … + 1/n
d. S = 1*2*…*n = n!
e. S = 1! + 2! + … + n!
18. Nhập 3 số nguyên a, b và n với a, b < n. Tính tổng các số nguyên dương nhỏ hơn n chia hết cho a
nhưng không chia hết cho b.
19. Tính tổng các số nguyên tố nhỏ hơn n (0 < n < 50)
20. Tìm và in lên màn hình tất cả các số nguyên trong phạm vi từ 10 đến 99 sao cho tích của 2 chữ số
bằng 2 lần tổng của 2 chữ số đó.
21. Tìm ước số chung lớn nhất của 2 số nguyên dương a và b nhập từ bàn phím.
22. Nhập n. In n số đầu tiên trong dãy Fibonacy.
a. a0 = a1 = 1
b. an = an – 1 + an – 2

Hàm
23. Giống bài câu lệnh rẽ nhánh. Mỗi câu một hàm
a. Viết hàm đổi một ký tự hoa sang ký tự thường.
b. Viết thủ tục giải phương trình bậc nhất.
c. Viết thủ tục giải phương trình bậc hai.
d. Viết hàm trả về giá trị nhỏ nhất của 4 số nguyên.
e. Viết thủ tục sắp xếp 4 số nguyên tăng dần.
24. Hàm nhận vào một số nguyên dương n và thực hiện:
a. Trả về số đảo của số đó.
b. Có phải là số đối xứng (Trả về True/False)
c. Có phải là số chính phương.
d. Có phải là số nguyên tố.
e. Tổng các chữ số lẻ.
f. Tổng các chữ số nguyên tố.
g. Tổng các chữ số chính phương.
25. Hàm nhận vào một số nguyên dương n và thực hiện:
a. S = 1 + 2 + … + n
b. S = 12 + 22 + … + n2
c. S = 1 + 1/2 + … + 1/n
d. S = 1 * 2 * … * n
e. S = 1! + 2! + … + n!
26. Hàm trả về USCLN của 2 số nguyên.
27. In ra n phần tử của dãy Fibonacy.

Bài tập tổng hợp


1. Cho trước file csv có định dạng như sau

a. Lưu lại danh sách học sinh với tên list_student_total.csv có thêm cột Total (tính trung
bình cộng điểm trung bình 3 môn)
b. Viết hàm in ra danh sách các học sinh có giới tính nam
c. Lưu lại danh sách học sinh với tên list_student_math.csv có điểm toán từ 8.5 trở lên
d. Viết hàm in ra danh sách học sinh có họ “Nguyen”
e. Lưu lại danh sách học sinh tách cột Full name thành First name (lưu tên) và Last name
(lưu họ và chữ lót)

You might also like