C4-10 · Khung chữ nhật
Xem dạng PDF
Gửi bài giải
Điểm:
1,00
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
Python
Đề
Cho hai số nguyên r và c. In một khung chữ nhật r dòng, c cột: viền là dấu *, bên trong là dấu cách.
Nói cách khác: dòng đầu và dòng cuối gồm c dấu *; mỗi dòng ở giữa gồm một dấu *, tiếp theo c − 2 dấu cách, rồi một dấu *.
Dữ liệu vào
Một dòng chứa hai số nguyên r và c (số dòng, số cột) cách nhau một dấu cách.
Kết quả
r dòng mô tả khung.
Ràng buộc
- 2 ≤ r ≤ 100; 2 ≤ c ≤ 100.
Ví dụ
Dữ liệu vào:
3 5
Kết quả:
*****
* *
*****
Giải thích ví dụ
Khung có 3 dòng, 5 cột. Dòng 1 và dòng 3 (dòng viền) là 5 dấu *. Dòng 2 có * ở cột 1 và cột 5, ba cột giữa (5 − 2 = 3) là dấu cách. Lập bảng trước khi viết code (Ví dụ 4.5):
| Dòng | Nội dung | Số * |
Số dấu cách ở giữa |
|---|---|---|---|
| 1 (viền trên) | ***** |
5 | 0 |
| 2 (giữa) | * * |
2 | 3 |
| 3 (viền dưới) | ***** |
5 | 0 |
Ghi chú
- Dấu cách là một phần của hình: hệ thống chấm bài này so từng dòng, phân biệt số dấu cách ở đầu và giữa dòng; chỉ bỏ qua dấu cách thừa ở cuối dòng.
print("*", " " * (c - 2), "*")chèn thêm một dấu cách giữa các đối số (mặc địnhsep=" "), nên dòng giữa bị rộng thêm 2 cột. Ghép chuỗi bằng+hoặc in từng ký tự vớiend="".- Khi r = 2 không có dòng giữa; khi c = 2 dòng giữa là
**(không có dấu cách).
Nguồn trong sách: Bài C4-10, mục 4.10, giáo trình Lập trình cơ sở với Python — TS. Nguyễn Quốc Long · Mức: (***)
Đang tải...