C4-14 · Hình thoi

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:
Sách "Lập trình cơ sở với Python"
Dạng bài
Ngôn ngữ cho phép
Python

Đề

Cho số nguyên dương n. In hình thoi bằng dấu *: phần trên là tam giác cân n dòng như Ví dụ 4.5 (dòng i có n − i dấu cách rồi 2i − 1 dấu sao), phần dưới là tam giác cân ngược n − 1 dòng (dòng giữa, dài nhất, chỉ in một lần).

Hãy lập bảng "dòng – số dấu cách – số dấu sao" trước khi viết code.

Dữ liệu vào

Một dòng chứa số nguyên n.

Kết quả

2n − 1 dòng tạo thành hình thoi.

Ràng buộc

  • 1 ≤ n ≤ 100.

Ví dụ

Dữ liệu vào:

2

Kết quả:

 *
***
 *

Giải thích ví dụ

Với n = 2, hình có 2 · 2 − 1 = 3 dòng:

Dòng Phần Dấu cách Dấu sao Hình
1 trên, i = 1 1 1 ␣*
2 trên, i = 2 0 3 ***
3 dưới, i = 1 1 1 ␣*

(␣ là một dấu cách.) Phần dưới đi ngược i = n − 1, …, 1 với cùng công thức dấu cách n − i, dấu sao 2i − 1. Với n = 4 hình có 7 dòng, dòng giữa là 7 dấu sao.

Ghi chú

  • Dấu cách đầu dòng 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 dấu cách ở đầu dòng; chỉ bỏ qua dấu cách thừa ở cuối dòng.
  • print(" " * (n - i), "*" * (2 * i - 1)) chèn thêm một dấu cách giữa hai đối số, cả hình bị lệch phải một cột — sai.
  • n = 1: hình chỉ là một dấu *.

Nguồn trong sách: Bài C4-14, 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...