3829 - Octogon: Difference between revisions
Paul Ungur (talk | contribs) Creat o pagină goală |
Paul Ungur (talk | contribs) |
||
Line 1: | Line 1: | ||
==Cerința== | |||
Să se afișeze un octogon de latură <span style="color: red;"> n</span> umplut cu caractere <span style="color: red;"> *</span> iar spațiul spațiul exterior umplut cu <span style="color: red;"> #</span>, ca în exemplu. | |||
==Date de intrare== | |||
Programul citește de la tastatură numărul <span style="color: red;"> n</span>. | |||
==Date de ieșire== | |||
Programul va afișa octogonul cerut. | |||
==Restricții și precizări== | |||
<span style="color: red;"> 2 ≤ n ≤ 40</span> | |||
==Exemplu:== | |||
Intrare | |||
5 | |||
Ieșire | |||
####*****#### | |||
###*******### | |||
##*********## | |||
#***********# | |||
************* | |||
************* | |||
************* | |||
************* | |||
************* | |||
#***********# | |||
##*********## | |||
###*******### | |||
####*****#### | |||
==Rezolvare== | |||
<syntaxhighlight lang=“python” line> | |||
n = int(input()) | |||
# afișăm prima jumătate a octogonului | |||
for i in range(n): | |||
for j in range(n - i - 1): | |||
print("#", end="") | |||
for j in range(2 * i + 1): | |||
print("*", end="") | |||
for j in range(n - i - 1): | |||
print("#", end="") | |||
print() | |||
# afișăm a doua jumătate a octogonului | |||
for i in range(n - 2, -1, -1): | |||
for j in range(n - i - 1): | |||
print("#", end="") | |||
for j in range(2 * i + 1): | |||
print("*", end="") | |||
for j in range(n - i - 1): | |||
print("#", end="") | |||
print() | |||
</syntaxhighlight> |
Revision as of 20:12, 19 March 2023
Cerința
Să se afișeze un octogon de latură n umplut cu caractere * iar spațiul spațiul exterior umplut cu #, ca în exemplu.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul va afișa octogonul cerut.
Restricții și precizări
2 ≤ n ≤ 40
Exemplu:
Intrare 5
Ieșire
Rezolvare
<syntaxhighlight lang=“python” line> n = int(input())
- afișăm prima jumătate a octogonului
for i in range(n):
for j in range(n - i - 1): print("#", end="") for j in range(2 * i + 1): print("*", end="") for j in range(n - i - 1): print("#", end="") print()
- afișăm a doua jumătate a octogonului
for i in range(n - 2, -1, -1):
for j in range(n - i - 1): print("#", end="") for j in range(2 * i + 1): print("*", end="") for j in range(n - i - 1): print("#", end="") print()
</syntaxhighlight>