Vẫn hóng thớt vô xác nhận lại đề.
Cần giúp đỡ chỉ ra quy luật của hình
Thực chất, việc ra đề khác trong trường hợp này là…vô dụng. Nếu đúng là ra đề khác thật thì cách giải nó chỉ khác ở chỗ là thêm bước tính số dòng thôi, ngoài ra chả có gì khác. Nếu đã làm khác rồi thì tại sao lại không làm hình vẽ kiểu tam giác đều, tam giác vuông(à cái này hơi dễ rồi). Ngoài ra, mình đã chỉ ra rồi, làm mỗi 2 trường hợp thế này thì làm sao chắc chắn cái số dòng khác n hoặc là số dòng=n nhưng đề in thiếu một dòng? Mà giả sử n=2
, n=2,5
, n=6
thì sao? Nói chung là đề còn thiếu trường hợp n, để chắc chắn được quy luật đúng thì cần thêm ít nhất một trường hợp n nữa.
n = 7
print('n = ' + str(n))
if (n % 2) != 0:
for i in range(1,n+1):
if (i % 2) != 0:
print('* ' * i)
print('* ' * (n + 2))
Output:
n = 7
*
* * *
* * * * *
* * * * * * *
* * * * * * * * *
[Finished in 0.1s]
Logic của đề bài theo post đầu tiên là:
Nếu n là số lẻ thì in ra *, tính từ n = 1
Bước nhảy = 2
Số lượng * của dòng kế cuối là = n
Số lượng * của dòng cuối = n + 2
Code ở trên là ví dụ nếu n = 7
Còn nếu n = 19 thì
n = 19
*
* * *
* * * * *
* * * * * * *
* * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * *
[Finished in 0.5s]
Tam giác vuông dễ hơn tam giác cân một bước.
Còn quy luật mình cũng nghĩ giống TL nhưng vẫn đợi thớt xác nhận. :V
Chủ yếu là tính toán để in ra *
Còn lại là cách thức in ra thôi. Mình không được học bài bản lắm nên không chắc cách in sao cho bài bản, nhưng để in đươc thì không khó lắm
@TaoLaoBidaoBanBanhBa À khoan, đề bài là hình tam giác cân mà? Tại sao lại có hình tam giác vuông ở đây?
Của bạn đây
n = 21
print('n = ' + str(n))
if (n % 2) != 0:
for i in range(1,n+1):
if (i % 2) != 0:
spaces = int((n-i)/2)
#print(spaces)
print(' ' + (' ' * int(spaces)) + ('*' * i) + (' ' * int(spaces)))
print('*' * (n + 2))
n = 21
*
***
*****
*******
*********
***********
*************
***************
*****************
*******************
*********************
***********************
[Finished in 0.5s]
Vấn đề ở đây không phải là code để in ra mà là quy luật sinh của đề bài chưa rõ ràng thôi
Bài tập cũng như dự án trong thực tế, nhiều khi thông tin không đủ, không rõ ràng, dev hay team buộc phải làm việc với những gì đã có.
Mình đưa code (có post giải thích về logic bên dưới) để bạn kia dễ hiểu hơn xíu. Thường mấy bài đơn giản, nhìn code sẽ dễ hiểu hơn.
Vấn đề là bạn kia đâu có vướng mắc làm code đâu. Khi đi làm cắm đầu code bừa cũng nguy hiểm như không biết code