
KỸ THUẬT LẬP TRÌNH C/C++
BÀI THỰC HÀNH 3
Ghi chú:
Trên máy tính tạo thư mục có tên: Họ tên_KTLTC_BTH3, trong thư mục này lưu các
câu của bài thực hành, ví dụ: MSSV_BTH3_cau1.cpp, MSSV_BTH3_cau2.cpp, …
Sau khi làm bài hực hành xong nén thư mục Họ tên_KTLTC_BTH3 lại thành file:
Họ tên_KTLTC_BTH3.rar hoặc .zip.
Nộp bài thực hành này (file nén .rar hoặc .zip) trên Google Classroom ngay sau buổi
thực hành.
Bổ sung lý thuyết:
1. Thuật toán sắp xếp đổi chổ (Interchange Sort)
2. Sử dụng mệnh đề switch-case trong trường hợp có nhiều case cùng thực thi một khối
lệnh
3. Sử dụng lệnh goto <label> để nhảy vô điều kiện đến vị trí label: trong đoạn chương trình.
4. Sử dụng hàm exit(0); để thoát khỏi chương trình C++.
5. Hàm làm tròn số thập phân roundf:
Ví dụ: double val = 1.23456789;
cout << roundf(val * 100)/100 << endl; // kết quả là 1.23
cout << roundf(val * 1000)/1000 << endl; // kết quả là 1.235
Câu 1. Viết chương trình C++ nhập vào điểm trung bình (theo thang điểm 10) từ bàn
phím trong lúc chạy chương trình và kiểm tra điểm trung bình.
- Nếu điểm trung bình từ 8.5 - 10 thì in ra màn hình: “Loai Gioi”
- Nếu điểm trung bình từ 7.0 - 8.4 thì in ra màn hình: “Loai Kha”
- Nếu điểm trung bình từ 5.5 - 6.9 thì in ra màn hình: “Loai Trung binh”
- Nếu điểm trung bình từ 4.0 - 5.4 thì in ra màn hình: “Loai Trung binh yeu”
- Ngược lại (điểm trung bình dưới 4.0) thì in ra màn hình: “Loai kem”
Hướng dẫn: Sử dụng mệnh đề if - else if - else
Câu 2: Viết chương trình nhập vào giờ (số nguyên) từ bàn phím trong lúc chạy chương
trình. Kiểm tra giờ đã nhập vào sử dụng mệnh đề switch-case với các trường hợp như
sau:
- Nếu giờ từ 7 đến bằng 11 thì in ra màn hình “Chao buoi sang”
- Nếu giờ từ 12 đến bằng 13 thì in ra màn hình “Chao buoi trưa”
- Nếu giờ từ 14 đến bằng 17 thì in ra màn hình “Chao buoi chieu”

- Ngược lại thì kiểm tra:
+ Nếu giờ nhập vào lớn hơn 24 thì in ra thông báo “Gio khong hop le”
+ Ngược lại thì in ra màn hình “Chuc ban ngu ngon!”.
Hướng dẫn: Sử dụng mệnh đề switch-case trong trường hợp có nhiều case cùng thực thi
một khối lệnh:
Cú pháp:
switch (biểu thức) {
case giá_trị_11: case giá_trị_12: case giá_trị_13:
// khối lệnh 1
break;
case giá_trị_21: case giá_trị_22: case giá_trị_23:
// khối lệnh 2
break;
...
default:
// khối lệnh trong default
}
Câu 3. Viết chương trình C++ nhập vào 3 số nguyên từ bàn phím trong lúc chạy chương
trình và sắp xếp 3 số này theo thứ tự tăng dần. Sử dụng mệnh đề if và thuật toán sắp xếp
đổi chổ (Interchange Sort). Sau khi chương trình thực thi xong thì quay lại để nhập vào
3 số nguyên khác.
Hướng dẫn: Thuật toán sắp xếp đổi chổ (Interchange Sort).
Ví dụ: Nhập vào 3 số a, b, c
Đầu tiêu so sánh a > b nếu đúng thì đổi chổ giữa a và b
Tiếp theo so sánh a > c nếu đúng thì đổi chổ giữa a và c
Cuối cùng so sánh b > c nếu đúng thì đổi chổ giữa b và c
Sau đó thì in ra 3 số: a, b, c
Câu 4. Viết chương trình C++ giải phương trình bậc nhất ax + b = 0 (với a, b là số
thực).
Hướng dẫn: Sử dụng mệnh đề if-else-if
Câu 5. Viết chương trình C++ giải phương trình bậc hai ax2+ bx + c = 0, với a, b, c là
các số thực được nhập vào từ bàn phím trong lúc chạy chương trình.
Hướng dẫn: Sử dụng mệnh đề if-else-if

Câu 6. Viết chương trình C++ nhập vào 2 số nguyên từ bàn phím trong lúc chạy chương
trình và cho phép chọn phép toán từ MENU để tính toán trên hai số này. Trong đó chọn
phép toán bằng cách nhấn vào số thứ tự hoặc chuỗi tương ứng.
Nhap so nguyen thu nhat:
Nhap so nguyen thu hai:
======MENU======
1.cong (add)
2.tru (sub)
3.nhan (mul)
4.chia (div)
5.thoat (exit)
================
Chon phep toan:…..
Ket qua phep ….. la: …..
Hướng dẫn: Sử dụng mệnh đề if-else-if
Lưu ý: Trong phép chia thì cần in ra kết quả là số thực làm tròn 2 chữa số thập phân.
Câu 7. Tương tự câu 6 nhưng sử dụng mệnh đề switch-case.
Lưu ý: switch(c){
…
}
//Trong đó biến c chỉ là kiểu số nguyên (int) hoặc ký tự (char)
Câu 8. Viết chương trình C++ nhập vào ba cạnh a, b, c. Kiểm tra xem ba cạnh này có
phải là ba cạnh của một tam giác hay không.
- Nếu đúng là ba cạnh của một tam giác thì kiểm tra tiếp theo tam giác đó thuộc loại
tam giác nào sau đây?
+ Nếu là tam giác vuông thì in ra thông báo: “Day la tam giac vuong”
+ Nếu là tam giác đều thì in ra thông báo: “Day la tam giac deu”
+ Nếu là tam giác cân thì in ra thông báo: “Day la tam giac can”
+ Nếu là tam giác tù thì in ra thông báo: “Day la tam giac tù”
+ Ngược lại là tam giác nhọn thì in ra thông báo: “Day la tam giac nhọn”
- Ngược lại in ra màn hình thông báo: “Khong phai ba canh cua tam giac”.

