BÀI 31. THỰC HÀNH VIẾT CHƯƠNG TRÌNH ĐƠN GIẢN
Nhiệm vụ 1: "Máy đếm số chẵn".
a) Xác định thuật toán:
- 1. Tạo một danh sách chứa các con số bất kỳ.
- 2. Tạo một biến dem = 0 (đóng vai trò như cái máy đếm, ban đầu chưa có gì).
- 3. Duyệt qua từng con số trong danh sách.
- 4. Nếu số đó chia hết cho 2 (số chẵn), thì tăng biến dem lên 1 đơn vị.
- 5. Kết thúc vòng lặp, in kết quả dem ra màn hình.
b) Xây dựng chương trình:
c) Kiểm thử và gỡ lỗi:
- Bước 1: Bật cửa sổ Variables (View → Variables).
- Bước 2: Cắm cờ (Điểm dừng/Breakpoint) tại dòng for so in danh_sach_so:
- Bước 3: Chạy chế độ Debug (Bấm Ctrl+F5).
- Bước 4: Bấm phím F7 liên tục để chạy từng bước. Quan sát cột Variables: các em sẽ tận mắt thấy biến so lần lượt nhận giá trị 5, 8, 12... và biến dem chỉ nhích lên 1, 2, 3... khi gặp đúng số chẵn.
Nhiệm vụ 2: "Tính tiền Taxi".
a) Xác định thuật toán:
Bảng giá cước taxi được quy định như sau:
- Đi dưới 2 km (bao gồm cả 2 km): Giá 15.000 VNĐ / 1 km.
- Đi từ trên 2 km đến 10 km: Giá 12.000 VNĐ / 1 km.
- Đi trên 10 km: Giá 10.000 VNĐ / 1 km.
Thuật toán:
- 1. Nhập số km hành khách đã đi (gọi là so_km).
- 2. Kiểm tra dữ liệu: Nếu so_km < 0 thì báo lỗi nhập sai.
- 3. Nếu hợp lệ, lần lượt dùng if... elif... else để xét 3 khoảng giá như trên . Tính tien_cuoc = so_km * gia_tien.
- 4. In số tiền cước ra màn hình.
b) Xây dựng chương trình:
c) Kiểm thử và gỡ lỗi:
Để đảm bảo chương trình bao quát hết các trường hợp (không có "bug" ẩn), các em chạy thử với các bộ dữ liệu sau:
- Test vùng biên: Nhập so_km = 2 (Kiểm tra xem máy tính đúng giá 15.000 hay bị nhầm sang 12.000).
- Test ngẫu nhiên: Nhập so_km = 6 (Kỳ vọng máy tính giá 12.000) và so_km = 15 (Kỳ vọng máy tính giá 10.000).
- Test dữ liệu lỗi: Nhập so_km = -5 (Chương trình phải yêu cầu nhập một số dương chứ không được tính ra tiền âm).