Dưới đây là 10 bài tập Python ứng dụng thực tế, vẫn tập trung vào việc sử dụng các cấu trúc rẽ nhánh (if, elif, else).
[Xem lại 20 bài tập IF ESLE cơ bản]
Nhóm 1: Thương mại & Dịch vụ
- Tính phí Giao hàng: Viết chương trình tính phí giao hàng.
- Nhập vào tổng giá trị đơn hàng.
- Nếu đơn hàng trên 500.000đ, miễn phí giao hàng (0đ).
- Nếu đơn hàng từ 100.000đ đến 500.000đ, phí là 20.000đ.
- Nếu đơn hàng dưới 100.000đ, phí là 35.000đ.
- Giá vé Xe buýt: Viết chương trình tính giá vé xe buýt dựa trên đối tượng.
- Nhập vào loại hành khách (chuỗi): “học sinh”, “sinh viên”, “người cao tuổi”, “thường”.
- Giá vé:
- “học sinh”: 3.000đ
- “sinh viên”: 5.000đ
- “người cao tuổi”: Miễn phí (0đ)
- “thường”: 7.000đ
- Giá phòng Khách sạn: Tính tiền phòng dựa trên loại phòng và số đêm.
- Nhập loại phòng (“Standard”, “Deluxe”, “Suite”) và số đêm.
- Giá cơ bản: Standard (1.000.000/đêm), Deluxe (1.500.000/đêm), Suite (2.500.000/đêm).
- Logic:
- Nếu ở trên 3 đêm, giảm 10% tổng tiền.
- Nếu ở 1-3 đêm, tính giá gốc.
- Tính tiền Đỗ xe: Tính tiền đỗ xe tại bãi giữ xe thông minh.
- Nhập loại xe (“xe_may”, “o_to”) và số giờ đỗ (ví dụ: 2.5).
- Logic:
- Nếu là “xe_may”: 5.000đ cho 2 giờ đầu. Mỗi giờ tiếp theo là 2.000đ.
- Nếu là “o_to”: 20.000đ cho giờ đầu tiên. Mỗi giờ tiếp theo là 15.000đ.
- (Lưu ý: Bạn sẽ cần làm tròn số giờ lên, hoặc xử lý logic cho giờ lẻ).
Nhóm 2: Tài chính & Nhân sự
- Tính thuế Thu nhập cá nhân (Đơn giản):
- Nhập vào tổng thu nhập hàng tháng.
- Giả sử mức giảm trừ bản thân là 11.000.000đ.
- Tính thu nhập chịu thuế = Thu nhập – Giảm trừ.
- Logic:
- Nếu thu nhập chịu thuế <= 0: Không phải nộp thuế.
- Nếu thu nhập chịu thuế từ 0 đến 5.000.000đ: Nộp 5%.
- Nếu thu nhập chịu thuế > 5.000.000đ: Nộp 10%.
- In ra số tiền thuế phải nộp.
- Tính Lương làm thêm giờ (OT):
- Nhập vào số giờ làm việc thực tế trong tuần và mức lương mỗi giờ.
- Giờ chuẩn là 40 giờ/tuần.
- Logic:
- Nếu số giờ làm $\leq$ 40: Lương = $số\_giờ \times mức\_lương$.
- Nếu số giờ làm $>$ 40: Lương = $(40 \times mức\_lương) + (số\_giờ\_OT \times mức\_lương \times 1.5)$.
- (Trong đó $số\_giờ\_OT = số\_giờ\_làm\_việc – 40$).
- Xét duyệt Khoản vay: Viết chương trình quyết định có duyệt khoản vay hay không.
- Nhập thu nhập hàng tháng, điểm tín dụng (từ 300-850), và số tiền muốn vay.
- Logic (Ví dụ):
- Nếu điểm tín dụng $< 580$: “Từ chối”.
- Nếu điểm tín dụng $\geq 580$ VÀ thu nhập $>$ 20.000.000: “Duyệt”.
- Nếu điểm tín dụng $\geq 580$ VÀ thu nhập $< 20.000.000$: “Cần xem xét thêm”.
Nhóm 3: Tiện ích & Xác thực
- Đánh giá Độ mạnh Mật khẩu (Cơ bản):
- Nhập vào một mật khẩu (chuỗi).
- Kiểm tra độ dài của mật khẩu:
- Nếu $< 8$ ký tự: “Mật khẩu Yếu”.
- Nếu từ $8$ đến $12$ ký tự: “Mật khẩu Trung bình”.
- Nếu $> 12$ ký tự: “Mật khẩu Mạnh”.
- (Nâng cao: Thêm điều kiện
andđể kiểm tra xem mật khẩu có chứa cả chữ và số không).
- Xác thực Email (Cơ bản):
- Nhập vào một chuỗi email.
- Kiểm tra xem email có hợp lệ “về mặt hình thức” hay không (đây là bài toán đơn giản, không dùng regex).
- Logic:
- Nếu chuỗi không chứa ký tự
@HOẶC không chứa ký tự.: “Email không hợp lệ”. - Nếu chuỗi chứa một
@và ít nhất một.: “Email có vẻ hợp lệ”.
- Nếu chuỗi không chứa ký tự
- Tư vấn Thời trang theo Thời tiết:
- Nhập vào nhiệt độ (số) và tình trạng thời tiết (chuỗi: “Nắng”, “Mưa”, “Âm u”).
- Logic:
- Nếu “Mưa”: “Nhớ mang áo mưa và ô.”
- Nếu nhiệt độ $> 30$: “Mặc đồ thoáng mát, cẩn thận say nắng.”
- Nếu nhiệt độ từ $20-30$ VÀ “Nắng”: “Thời tiết đẹp, mặc đồ thoải mái.”
- Nếu nhiệt độ $< 20$: “Trời lạnh, nhớ mặc áo khoác.”
