3829 - Octogon: Difference between revisions
Paul Ungur (talk | contribs) |
Paul Ungur (talk | contribs) |
||
Line 13: | Line 13: | ||
==Exemplu:== | ==Exemplu:== | ||
Intrare | Intrare | ||
5 | 5 | ||
Ieșire | Ieșire | ||
<nowiki>####*****####</nowiki> | |||
<nowiki>###*******###</nowiki> | |||
<nowiki>##*********##</nowiki> | |||
<nowiki>#***********#</nowiki> | |||
<nowiki>*************</nowiki> | |||
<nowiki>*************</nowiki> | |||
<nowiki>*************</nowiki> | |||
<nowiki>*************</nowiki> | |||
<nowiki>*************</nowiki> | |||
<nowiki>#***********#</nowiki> | |||
<nowiki>##*********##</nowiki> | |||
<nowiki>###*******###</nowiki> | |||
<nowiki>####*****####</nowiki> | |||
==Rezolvare== | ==Rezolvare== | ||
<syntaxhighlight lang= | <syntaxhighlight lang="python" line="1"> | ||
n = int(input()) | n = int(input()) | ||
Revision as of 20:13, 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="1"> 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>